API Contracts
wpisy (4)
- Warstwy HTTP w przeglądarce: od fetch() do QUIC2/9
Methods i status codes: semantyka, nie dekoracja
Metoda i status mówią browserowi oraz infrastrukturze, co wolno zrobić z requestem. Dlatego retry POST-a jest inną decyzją niż retry GET-a.
- Testowanie przez warstwy: od kodu do infrastruktury4/9
Contract tests i API tests: publiczna umowa systemu
Contract test pilnuje umowy między systemami, a API test sprawdza zachowanie publicznego interfejsu. Oba są potrzebne tam, gdzie zmiana przestaje być prywatna.
- Sposoby komunikacji z backendem: od formularza HTML do GraphQL5/6
RPC: kiedy API modeluje operacje zamiast zasobów
RPC zaczyna od operacji, nie od zasobu. Intencja staje się jawna, ale semantyka przenosi się z HTTP do kontraktu aplikacji.
- Sposoby komunikacji z backendem: od formularza HTML do GraphQL4/6
REST: zasoby, reprezentacje i semantyka HTTP
REST to nie „JSON i endpointy”. To zasoby identyfikowane przez URI, reprezentacje oddzielone od zasobu i wykorzystanie znaczenia metod HTTP.