Middle
Jakie zasady architektury REST znasz?
sobes.tech AI
Odpowiedź od AI
- Architektura klient-serwer: Wyraźny podział obowiązków między klientem, który żąda zasobów, a serwerem, który je dostarcza.
- Bezstanowość (Stateless): Każde żądanie od klienta do serwera musi zawierać wszystkie niezbędne informacje do zrozumienia i obsługi żądania. Serwer nie przechowuje informacji o poprzednich żądaniach klienta.
- Buforowalność (Cacheable): Odpowiedzi od serwera mogą być oznaczone jako buforowalne lub nie, co pozwala klientom na ponowne użycie otrzymanych odpowiedzi w celu zwiększenia wydajności.
- Jednolity interfejs: Cztery ograniczenia:
- Identyfikacja zasobów: Zasoby są identyfikowane za pomocą URI.
- Manipulacja zasobami przez reprezentacje: Klient wchodzi w interakcję z zasobem poprzez przesyłanie reprezentacji zasobu.
- Samodokumentujące się wiadomości: Każda wiadomość zawiera wystarczająco informacji, aby zrozumieć, jak ją obsłużyć (np. typ zawartości).
- HATEOAS (Hypermedia as the Engine of Application State): Klient przechodzi między zasobami, podążając za linkami w odpowiedziach serwera.
- System warstwowy: Architektura pozwala na użycie warstw pośrednich (np. proxy, bramki) między klientem a serwerem, nie wpływając na ich interakcję.
- Kod na żądanie (opcjonalnie): Serwer może tymczasowo rozszerzać lub konfigurować funkcjonalność klienta, przesyłając kod wykonywalny (np. JavaScript). Jest to zasada opcjonalna.