RESTful Design Principles


cmd

Here, we will outline the set of RESTful design principles that should be adhered to when creating a ‘proper’ RESTful service.

Let’s start with the basics. What is REST?

REST = REpresentational State Transfer. REST relies on a stateless, client-server, cacheable communications protocol. Almost all REST applications use the HTTP protocol. HTTP and REST make for a great match. Together they help to create a simple, lightweight foundation with which we can build complex web applications. At the heart of REST, are HTTP operations. They can be loosely thought of as our CRUD operations e.g. Create, Read, Update, Delete. By leveraging HTTP, a REST application might use POST, GET, PUT, and DELETE to map to CRUD operations

REST terminology:

Resources:

Resources are nouns. Resources are identified by URIs
e.g. Car identified by http://www.automart.com/cars/12345

Methods:

Methods are verbs. They perform CRUD operations.
Methods are: POST, GET, PUT, DELETE

Representation:

Data or…

View original post 232 more words