What is REST?
REST, REpresentational State Transfer, is a type of web development architecture that is fully supported by the HTTP standard.
REST allows us to create services and applications that can be used by any device or client that understands HTTP, so it is incredibly simpler and more conventional than other alternatives that have been used in the last ten years as SOAP and XML-RPC.
REST was defined in 2000 by Roy Fielding, co-author also of the HTTP specification. We could consider REST as a framework to build web applications respecting HTTP.
Therefore REST is the most natural and standard type of architecture to create APIs for Internet-oriented services.
There are three levels of quality when REST is applied in the development of a web application and, more specifically, an API that is collected in a model called Richardson’s Maturity Model in honor of the type that established it, Leonard Richardson, father of architecture oriented to resources.
These levels are:
- Correct use of URIs.
- The correct use of HTTP.
- Implement Hypermedia.
In addition to these three rules, you should never save state on the server, all the information that is required…