2016-11-18 2 views
0

Ich habe eine Ziel-Pool-Entität, die viele Ziel-Entitäten haben kann. Wie erhalte ich eine REST-URL-Anfrage, um dem Zielpool ein Ziel hinzuzufügen oder ein Ziel aus dem Zielpool zu löschen.Entfernen oder erstellen 'Hat eine' Beziehung zwischen Entitäten in REST

Im Moment bin ich mit

/destinationpool/{destinationpool-name}/add/{destination-name} ein Ziel zu einem Ziel-Pool hinzufügen

/destinationpool/{destinationpool- name}/löschen/{destination-name} ein Ziel von einem Ziel Pool

Beide sind PUT zu entfernen fordert

Antwort

1

Wenn Sie versuchen, wirklich RESTful zu sein, sollten Ihre CRUD-Aktionen durch Ihre http-Verben angegeben werden, nicht durch Ihre URL. Ich neige dazu, meine Eingaben als Teil der URL-Parameter zu platzieren, so dass sie einen Standardfunktionsaufruf imitiert, in dem Sie die Funktionsdefinition und die Parameter haben.

erstellen (post vs put)

[POST] 
/destinationpool/{destinationpool-name}/destinations 
(url).../destinationpool/{destinationpool-name}/destinations?destination-name=<name> 

[DELETE] 
/destinationpool/{destinationpool-name}/destinations 
(url)..../destinationpool/{destinationpool-name}/destinations?destination-name=<name> 

löschen Wenn Sie die oben lesen, ist es klar, dass man etwas in den Zielen Beziehung Zielpool platzieren (oder etwas löschen von).

Als eine Randnotiz - Namen sind wegen Eindeutigkeit, Rechtschreibung, Großschreibung usw. gefährlich. Ids sind viel besser.

+0

Um noch klarer zu werden: Wir fügen keine Ziele zum Zielpool hinzu und löschen sie nicht. Wir fügen lediglich die Verknüpfung zwischen ihnen hinzu und entfernen sie. Ziele sind nicht an den Zielpool gebunden. Ein Ziel kann mehreren Zielpools hinzugefügt werden. Bitte lassen Sie mich wissen, ob das oben genannte noch sinnvoll ist? – user2192634

Verwandte Themen