obecnie projektujemy wewnętrzny interfejs aplikacji REST. mamy następujący przypadek użycia:Projektowanie interfejsu REST API - sprawdzanie danych poczty - jakie trucizny wybrać?
- użytkownika (109) chce, aby przeczytać wiadomość, że został wysłany do innego użytkownika (110)
- użytkownikowi odczytu (109) jest znany do aplikacji za pośrednictwem swojego tokena poświadczenia, że otrzymała po uwierzytelnieniu (robiąc żądania GET)
- zakładamy w tym przykładzie użytkownik 109 był nadawca i 110 odbiornik
podsumowania z perspektywy użytkowników „dać mi wiadomość, że (109) wysłali do 110 "
następujące URI przyszedł do naszego umysłu, ale nie możemy się zdecydować, który z nich ma:
a) GET http://localhost:9099/api/mails/109?receiverUserId=110
b) GET http://localhost:9099/api/mails?senderUserId=109&receiverUserId=110
c) GET http://localhost:9099/api/mails?receiverUserId=110
d) GET http://localhost:9099/api/mails/me/to/110 (when logged in as 109 via token credentials we know that "me" is 109)
f) GET http://localhost:9099/api/mails/109/to/110 (explicit request, e.g. for admins … has to be guarded against illegal access)
wszystkie linki są „kontekstu”, który wysyła jeden z linków do odbiornika (110) będzie dają różne wyniki, wykonując żądanie GET.
Chciałbym poznać Twoją opinię na temat adresu URL.
każda pomoc wysoko ceniona.
okrzyki Marcel
Po prostu obserwacja: (b) i (d) są identyczne. – ArjunShankar
ah przepraszam, masz rację ;-) – Marcel
Głosuję za. Nie widzę sensu w wskazywaniu użytkownika czytającego, ponieważ jest on znany. (z wyjątkiem buforowania) – njzk2