REST API – na czym polega?
Ostatnia aktualizacja 16 maja, 2023
REST API to aplikacyjny interfejs programistyczny, który tworzy zestaw reguł łączenia i komunikacji poszczególnych aplikacji i urządzeń. Nazwa pochodzi od dwóch skrótowców:
REST, czyli Representational State Transfer, który jest stylem architektury oprogramowania z określonym zbiorem reguł definiowania i dostępu do zasobów. Definiuje jak ma wyglądać API.
API, czyli Application Programming Interface, który definiuje zbiór reguł komunikacji między systemami komputerowymi, a także pomiędzy systemem komputerowym a użytkownikiem.
Sprawdź: Jak się przebranżowić?
REST API – reguły projektowania
- Niezależność aplikacji klient-serwer
Konieczne do zachowania spójności danych jest rozdzielenie klient-serwer. Klient komunikuje się z serwerem, aby uzyskać dostęp do usługi. Serwer odpowiada danymi, ale nie ingeruje w UI. Dzięki temu wykorzystuje się jedno REST API w kilku niezależnych aplikacjach.
- Jednolity interfejs
Niezależnie od platformy, z której użytkownik komunikuje się z serwerem, format komunikacji zawsze będzie ten sam.
- Buforowalność
Jeśli jakiś zasób może być wykorzystywany często, serwer musi być w stanie te dane zbuforować. W przypadku ponownego otrzymania tego samego zapytania dane mogą być wysłane od razu z bufora zamiast zbierania ich na nowo.
Prostota REST API pozwala projektantom sieci projektować rozwiązania optymalne dla ich systemów. Z perspektywy użytkownika nieważne jest, z jakim typem urządzenia się komunikuje. Otrzymane informacje będą takie same w przypadku serwera lub innego pośrednika, np. load balancera.
- Bezstanowość
W interfejsie REST klient musi dostarczyć komplet wymaganych informacji od razu w momencie zapytania. Serwer może od razu na to zapytanie odpowiedzieć, a po odpowiedzi nie przechowuje informacji o zapytaniu.
Zobacz: Data Scientist – zarobki
- Warstwowość
Warstwowość REST API polega na ścisłym rozdzieleniu funkcjonalności. Logika biznesowa, warstwy uwierzytelniające i inne elementy programu muszą być od siebie niezależne. Klient jednej warstwy nie musi wiedzieć o istnieniu kolejnej warstwy.
- Kod na żądanie
To ostatni, opcjonalny warunek. Klient może otrzymać nie tylko dane, ale także odpowiedź w formie kodu, który może wykorzystać w swojej aplikacji, np. będą to fragmenty JavaScriptu.
Chcesz wiedzieć więcej? Sprawdź szczegóły dotyczące kursu Junior IT Masterclazz. Powyższe wideo pochodzi z modułu pt. “First REST then design a good API. Przewodnik po REST API z NodeJS i React”.
Czym jest HATEOAS?
HATEOAS (Hypermedia as the Engine of Application State) to jeden z kluczowych elementów architektury REST. To koncepcja, w której hipermedia służą jako środek sterowania stanem aplikacji.
Główna idea polega na tym, że odpowiedź od serwera zawiera nie tylko dane, ale również informacje o możliwych akcjach, które klient może podjąć w następnym kroku.
Na przykład, po pobraniu szczegółów użytkownika, odpowiedź może zawierać linki do akcji takich jak: “aktualizacja danych użytkownika” lub “usunięcie użytkownika”. Dzięki temu klient nie musi znać wszystkich dostępnych ścieżek i operacji – może dynamicznie nawigować po API.
HATEOAS zwiększa odkrywalność API, co jest szczególnie użyteczne w dużych, złożonych systemach. Choć wprowadzenie HATEOAS może być wyzwaniem, korzyści z łatwiejszego zarządzania i skalowania API są często tego warte.
Czytaj także:
Kiedy wykorzystać urlop okolicznościowy i czy jest płatny?
Roomba nagrał kobietę, a jej zdjęcia trafiły na Facebooka
WordPress – co to jest i dlaczego jest tak popularny na świecie?