2015-09-09 8 views
7

Was wäre der beste Weg, um eine HATEOAS-Link für eine POST/PUT/PATCH auf einer Ressource zu repräsentieren? Diese Operationen haben Payload, aber wir haben keine Option, die Payload in der HATEOAS-Verbindung darzustellen, da sie nicht vorbestimmt und schwer sein können. Wäre es also ausreichend, nur den Endpunkt anzugeben und die Operation anzugeben?HATEOAS verbindet mit PUT/POST

Alle Beispiele oder Beispiele würden für eine JSON-Antwort mit HATEOAS POST/Link sehr geschätzt werden.

+0

werfen Sie einen Blick auf die Sirenenspezifikation. Es verwendet etwas namens Aktionen, die ziemlich gut für umsetzbare Elemente ist. Suchen Sie auf der folgenden Seite nach einem Beispiel https://github.com/kevinswiber/siren – TheOneWhoPrograms

Antwort

1

Links bestehen aus zwei Elementen: href und rel. Die href enthält die explizite URL zum Suchen einer Ressource. Die rel identifiziert die Beziehung zwischen der aktuellen Ressource und der Ressource der Verbindung. Die rel sollte verwendet werden, um festzustellen, welche HTTP-Methode akzeptabel ist und wie die Verbindung verwendet werden sollte.

Nachstehend ist ein Zitat von RESTful Web Services Kochbuch Abschnitt 5.4:

Ein Link Beziehungstyp die Rolle oder Zweck eines Links vermittelt. Sobald sich Clients und Server über die Bedeutung dieser Typen einig sind, können Clients URIs von Links finden und verwenden.

Zum Beispiel ist edit ein standard link relation, die sich um mit GET, explicit details mit Details hat PUT, POST, DELETE.

Link-Beziehungen können erweitert werden und Sie können Ihre eigenen hinzufügen.