HATEOAS ist die Einschränkung, dass ein Client seine Möglichkeiten aus den empfangenen Antworten ermitteln soll, anstatt aus fest codierten URLs in der Dokumentation. Jede Repräsentation enthält Links, und diese Links steuern den Client von einem Zustand zum nächsten.
Eine Antwort enthält eine Linkstruktur – üblicherweise `_links` –, die die verfügbaren Übergänge und ihre URLs benennt: self, next, cancel, approve. Der Kunde folgt dem Link, der der gewünschten Aktion entspricht. Da die verfügbaren Links vom aktuellen Status abhängen, enthält eine bereits versandte Bestellung keinen Stornierungslink, und der Kunde benötigt keine eigene Regel, wann eine Stornierung zulässig ist.
Dass HATEOAS rein theoretisch ist und von keinem Client implementiert wird, ist jedoch weit verbreitet. Partielles HATEOAS hingegen findet sich überall: Die `next` -URL in einer paginierten Antwort basiert genau auf diesem Prinzip, und ein Client, der dieser URL folgt, anstatt einen Seitenzähler zu erhöhen, profitiert bereits davon – es funktioniert weiterhin, selbst wenn der Server auf Cursor-Paginierung umstellt.
Die Endpunkte des Protocol Lab-Dokuments fügen jedem Element einen `_links` hinzu. Die Banktransaktionsliste verwendet einen Cursor, dem der Client folgen soll, anstatt ihn selbst zu erstellen.
Diese Seite auf Englisch lesen
Alle Glossarbegriffe · Testtechniken · Alle 39 Mock-REST-APIs
Zuletzt aktualisiert