REST Web Services Characteristics
Here are the characteristics of REST:
* Client-Server: a pull-based interaction style: consuming components pull representations.
* Stateless: each request from client to server must contain all the information necessary to understand the request, and cannot take advantage of any stored context on the server.
* Cache: to improve network efficiency responses must be capable of being labeled as cacheable or non-cacheable.
* Uniform interface: all resources are accessed with a generic interface (e.g., HTTP GET, POST, PUT, DELETE).
* Named resources - the system is comprised of resources which are named using a URL.
* Interconnected resource representations - the representations of the resources are interconnected using URLs, thereby enabling a client to progress from one state to another.
* Layered components - intermediaries, such as proxy servers, cache servers, gateways, etc, can be inserted between clients and resources to support performance, security, etc.