2017-06-11 4 views
0

Ich bin mir über meine REST-Benennung nicht sicher.saubere REST-Routen

Ich habe 3 Routen:

GET und DELETE und PUT/Buch /: BookID/Übersetzung /: translationId

Mit GET erhalte ich die Übersetzung von a Buch. Mit DELETE Ich lösche die Übersetzung eines Buches. Und mit PUT ändere ich die Übersetzung.

Aber wie wäre es mit der Benennung für die POST Route? Mit POST Ich werde eine neue Übersetzung für ein Buch erstellen.

Sollte es besser /Buch /: BookID oder /Buch /: BookID/Übersetzung

Thanks's viel für Ihr Feedback!

+1

Sind Sie in dem Buch dieser ID oder veröffentlichen Sie die Übersetzung unter dieser ID? Und macht das überhaupt Sinn? – Rob

+0

Wir müssen viel mehr darüber wissen, was der POST tatsächlich tut, um die Benennung der Route zu kommentieren. – jfriend00

+0

Okay Entschuldigung, ich werde meinen Beitrag aktualisieren! –

Antwort

1

Sollte es besser sein/Buch /: BookID oder/Buch /: BookID/Übersetzung

Es scheint, dass /book/:bookId/translation am meisten Sinn für die POST einer neuen Übersetzung aus folgenden Gründen machen würde:

  1. Sie geben genau an, was Sie veröffentlichen (eine Übersetzung in eine bestimmte Buch-ID).
  2. Dies entspricht der Abfrage einer Übersetzung mit /book/:bookId/translation/:translationId.
  3. Es wäre konsistent mit, wie Sie eine Liste von Übersetzungen abfragen würde, indem Sie eine GET auf /book/:bookId/translation.
  4. Dieses allgemeine Schema ist insofern sinnvoll, als es sich um den Objekttyp gefolgt von einer Objekt-ID handelt, gefolgt von der Art des Unterobjekts.