167
edits
(Created page with "Originally called REST, HATEOAS is a way of designing HTTP APIs as described in [https://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm Roy Fieldings thesis]....") |
No edit summary |
||
| Line 1: | Line 1: | ||
Originally called REST, HATEOAS is a way of designing HTTP APIs as described in [https://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm Roy Fieldings thesis]. The acronym stands for [[Hypermedia]] as the Engine of Application State. | Originally called REST, HATEOAS is a way of designing HTTP APIs as described in [https://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm Roy Fieldings thesis]. The acronym stands for [[Hypermedia]] as the Engine of Application State. | ||
It distinguishes itself from other APIs by having the following properties: | |||
* Heavy use of [[Media Types]] to allow [[Backward Compatibility]]. | |||
* It does not allow clients to construct [[URL | URLs]] (unless instructed by the server to do so) to allow for applications to change their URL structure. | |||
* Other than an entry URL and a set of documents describing the [[Media Types]], no additional knowledge should be necessary to use the API. | |||
HATEOAS APIs usually make heavy use of HTTP features like: | |||
* [[Caching]] to enable the application to [[Scaling | scale better]]. | |||
* [[Content Negotiation]] to [[Backward Compatibility | support older clients]] and [[Internationalization | give users localized versions of resources]]. | |||