Jaki jest argument dla pojedynczych rzeczowników w nazewnictwie zasobów interfejsu API RESTful?

12

Rozumiem, że podczas nadawania nazwy RESTful URI powszechnie przyjmuje się liczbę mnogą do reprezentowania kolekcji zasobów. Ciekawi mnie argument przemawiający za użyciem rzeczowników w liczbie pojedynczej.

dobroczynność
źródło
może dlatego, że nie wszystko jest kolekcją?
jwenting
Czy to nie miejsce, w które wchodziłyby zasoby singletonów?
charytatywna

Odpowiedzi:

12

Niektóre zasoby zawierają tylko jeden element. Dobrym przykładem byłoby wszystko, dla którego nie potrzebujesz identyfikatora, aby dowiedzieć się, jakie dane renderować. Na przykład bardzo często występuje zasób logowania. Masz (z widoku użytkowników i przeglądarek) tylko jeden login. Możesz go utworzyć, możesz go zniszczyć, ale nie będziesz mieć akcji indeksowania z kilkoma loginami do wyboru.

Podobne przykłady to niektóre statyczne strony, takie jak informacje o firmie, informacje o firmie, formularze kontaktowe i podobne rzeczy, które wyświetlają tylko jeden element lub pozwalają tylko na jedno działanie tworzenia.

Może być kwestią do dyskusji, jeśli użycie pojedynczych rzeczowników naprawdę znacznie poprawia czytelność kodu.

Thorsten Müller
źródło
5

Bo:

  1. Angielskie zasady liczby mnogiej, takie jak „wiśnie”, nie są najmilszą rzeczą, o której warto pomyśleć, rozwijając API, szczególnie gdy angielski nie jest twoim językiem ojczystym.
  2. Czasami chcesz wygenerować punkt końcowy z modelu, co zwykle jest liczbą pojedynczą. Z powyższym nie działa dobrze.
  3. Argument „zwykle rozpoczyna się zapytanie od Get, aby wyświetlić listę” nie odnosi się do żadnego rzeczywistego przypadku użycia. Skończysz przeszukiwać pojedyncze elementy, a nawet więcej niż listę elementów.
Benoit
źródło