HATEOAS

HATEOAS, abbreviazione di "Hypermedia as the Engine of Application State", è un vincolo delle applicazioni basate su architettura REST che le distingue dalla maggior parte delle altre applicazioni web. Il principio consiste in un client che interagisce con un'applicazione web esclusivamente attraverso gli ipermedia forniti dinamicamente dai server dell'applicazione stessa. Un client REST non necessita così di nessuna conoscenza a priori per interagire con una particolare applicazione o server che vada oltre la normale comprensione degli ipermedia. Al contrario, in un'architettura SOA ("service-oriented architecture"), i client e i server interagiscono tra loro tramite un'interfaccia specifica stabilita tramite documentazione o tramite un linguaggio di descrizione di interfaccia.

Il vincolo HATEOAS disaccoppia client e server in modo tale da permettere alle funzionalità server di evolvere indipendentemente.