REST API – na czym polega?

enterthecode.pl 2 lat temu

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 systemu 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.

REST API – reguły projektowania

  1. 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.

2. Jednolity interfejs

Niezależnie od platformy, z której użytkownik komunikuje się z serwerem, format komunikacji zawsze będzie ten sam.

3.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.

4. 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.

5. 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.

6. 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.

Idź do oryginalnego materiału