Mam endpointy POST /api/memberships
, DELETE /api/memberships/{id}
i może kiedyś PUT /api/memberships/{id}
. Nie mam za to endpointu GET /api/memberships/{id}
. Front potrzebuje znać id dodanego membership tuż po dodaniu. Czy poprawnie będzie zwrócić w POST
header Location
wskazujący na /api/memberships/{id}
?
0
2
To co tworzy POST
, że nie można potem się do tego dostać?
Jeśli dobrze kojarzę to standard nie definiuje* co powinno zwracać POST (ani chyba wprost nie zabrania) to możesz w body wrzucić {"id":1}
*niech mnie ktoś poprawi jeśli się myle
0
Mam tylko endpointy /api/user/{userId}/groups
i /api/group/{groupId}/members
, bo tylko tych potrzebuję. :(
2
Tak będzie poprawnie, nawet masz wbudowaną metodę która ustawia to za Ciebie:
Microsoft.AspNetCore.Mvc.CreatedResult Created (string uri, object value);
1
Ja bym tak nie robił, bo to trochę WTF że dostajesz location które daje 404 ;) Ty odejdziesz, przyjdzie nowy frontendowiec i nikt nie będzie wiedział co się dzieje. Ja bym jednak zwrócił body z tego POSTa i tam przekazał detale utworzonego entry.