An alternative approach to web services is REpresentional State Transfer (REST). Services that conform to this architectural style are often called RESTful services. The main difference between REST and SOAP or JSON-RPC is that REST is based almost entirely on HTTP and URI semantics.
REST is an architectural style defining a set of constraints when implementing web services. Services that conform to this style are called RESTful. These constraints are as follows:
- Must use a client-server model.
- Statelessness (neither the client nor the server needs to store the state related to their communication).
- Cacheability (responses should be defined as cacheable or non-cacheable to benefit from standard web caching to improve scalability and performance).
- Layered system (proxies and load balancers should by no means affect the communication between the client and server).
REST uses HTTP as the transport protocol with URIs representing resources and HTTP...