Junior
Czym jest API REST?
sobes.tech AI
Odpowiedź od AI
Interfejs API REST to styl architektoniczny służący do budowania rozproszonych systemów. Główne zasady REST:
- Bezstanowość: Każde żądanie od klienta do serwera musi zawierać wszystkie niezbędne informacje do przetworzenia. Serwer nie przechowuje stanu klienta między żądaniami.
- Klient-Serwer: Wyraźny podział obowiązków między klientem a serwerem. Klient wysyła żądania, serwer je obsługuje.
- Cache'owalność: Serwer musi wskazać, czy odpowiedzi mogą być przechowywane w pamięci podręcznej przez klienta lub pośredników.
- System warstwowy: Klient nie musi bezpośrednio komunikować się z końcowym serwerem; może to robić przez pośrednie warstwy (proxy, load balancery).
- Ujednolicony interfejs: Jeden i standaryzowany sposób komunikacji między klientem a serwerem. Zasada ta obejmuje:
- Identyfikację zasobów: Zasoby (dane) są identyfikowane przez URL.
- Manipulację zasobami przez reprezentacje: Klient wchodzi w interakcję z zasobami, otrzymując ich reprezentacje (np. JSON, XML) i wysyłając nowe reprezentacje do modyfikacji.
- Samodzielne wiadomości: Każda wiadomość zawiera wystarczające informacje, aby ją zrozumieć.
- HATEOAS (Hypertext As The Engine Of Application State): Zasoby powinny zawierać odnośniki (hiperłącza) do powiązanych zasobów i dostępnych działań.
REST API zazwyczaj używa standardowych metod HTTP do wykonywania operacji na zasobach:
- GET: Pobranie zasobu lub kolekcji zasobów.
- POST: Utworzenie nowego zasobu.
- PUT: Pełna aktualizacja istniejącego zasobu.
- PATCH: Częściowa aktualizacja istniejącego zasobu.
- DELETE: Usunięcie zasobu.
Przykład reprezentacji JSON zasobu:
{
"id": 1, // Identyfikator
"name": "Resource Name", // Nazwa zasobu
"description": "Detailed description of the resource." // Opis zasobu
}
Testowanie REST API obejmuje sprawdzanie:
- Funkcjonalności (poprawności odpowiedzi na żądania).
- Obsługi błędów.
- Wydajności.
- Bezpieczeństwa.
- Zgodności z dokumentacją.