Wpis z mikrobloga

#naukaprogramowania #php
piszę sobie API i mam dylemat jak mówić API, że robi np. delete danego modelu Usera albo Produktu. Czy wyciągać po URL typu
users/1 czyli jest users to model user
czy zamieszczać te informacje w jsonie "model": "user"
Co jest lepsze ? W ogóle w body JSON powinno iść coś innego oprócz danych z formularza typu
np. name, surname, age
???
  • 9
@NoToTenTego:

"model": "user"

Nie widzę sensu by tak robić, w końcu wiesz że to co dostajesz to user. Nie spotkałem się z API które w jsonie mówiłoby co to za obiekt.

W ogóle w body JSON powinno iść coś innego oprócz danych z formularza typu

HATEOAS
@NoToTenTego: posługuj się metodami http. restowe api w skrócie powinno kierować się regułami:
- adresy resource w liczbie mnogiej. czyli np /users
- metody http mówią o tym co request robi: GET pobiera, POST tworzy, PUT/PATCH zmienia, DELETE usuwa
- ID umieszczasz w adresie dla sytuacji gdzie jest potrzebne (PUT/PATCH/DELETE albo GET na jeden model)
- body raczej stosujesz tylko do POST i PATCH/PUT
- response powinien kodem poinformować czy był
@NoToTenTego: tak. nie powinnaś informować klienta API co mu zostało zwrócone, bo powinien to wiedzieć przez użycie adresu. wiec jedynie dane modelu z jego id.

chyba ze zwrotka jest kolekcja, to wtedy poza lista modeli warto dodać informacje o paginacji (która strona, ile na stronie, ile stron jest razem i ile pozycji)