Representational State Transfer (REST) was originally introduced in the dissertation of Roy Thomas Fielding in the year 2000. The most important principles of REST are as follows:
REST builds on client-server architecture: REST clients send requests to services that provide responses. In other words, services always serve clients, and not the other way around.
REST uses HTTP methods explicitly: In a sense, REST mimics CRUD operations:
POST
for creating data,GET
for reading data,PUT
for updating data, andDELETE
for deleting data. The usage of other HTTP methods, such asHEAD
orTRACE
, is not that well-defined in REST. Generally, they should be used as defined in HTTP.REST is a stateless architectural style: Statelessness means that no client context is stored on the server between requests. All context, parameters, and data needed for the server to generate the response are included in the request. This significantly improves scalability and simplifies the architecture...