2017-02-11 5 views
0

Ich versuche, das beste Design für eine API zu finden. Ich habe user und institution Objekte. Jede user kann nur eine institution haben, die auf der users Tabelle durch eine institution_id Spalte dargestellt wird.Rest API Design: Aktualisierung der Beziehung

Wie sollte ich einen Endpunkt modellieren, der sich ändern würde, welcher institution ein user ist für angemeldet?

Einige meiner Ideen:

PUT /user/institution im neuen institution_id im Körper vorbei.

PATCH /user Aktualisierung der institution_id Spalte in users

Irgendwelche Vorschläge?

Antwort

0

Ich glaube, dass PATCH /user updating the institution_id column in users

besser ist, weil Sie ein Attribut in dem Benutzermodell aktualisieren und Sie können es wie jedes andere Attribut betrachten gehören dem Benutzer wie E-Mail, Adresse .. etc, da institution_id a Spalte in Benutzertabelle.

Auch die Verwendung von PUT führt dazu, dass Sie das gesamte Modell bereitstellen, wenn Sie den Benutzer aktualisieren und dadurch Ihren Netzwerkverkehr verbrauchen.

BTW, bei der Verwendung von PATCH Sie nur die Attribute, die Sie aktualisieren möchten, ist, und mit PUT Sie bieten das gesamte Benutzermodell.

Die Rückkehrdaten von 2 Verben (PUT UND PATCH) sollte das gesamte Modell nicht nur die aktualisierten Attribute sein.

Verwandte Themen