REST API Flashcards
Co to jest REST i czym się charakteryzuje?
- REST (Representational State Transfer)
- styl architektury oprogramowania
- definiuje zestaw funkcji, takich jak GET, PUT, DELETE, POST itp., których klienci mogą używać do uzyskiwania dostępu do danych serwera
- serwer udostępnia endpoiny a klienci robią calla
- jeden ze sposobów na komunikacje miedzy aplikacjami
- Klienci i serwery wymieniają dane za pomocą protokołu HTTP.
Jakie są typowe metody HTTP używane w RESTful API?
- GET
- POST
- PUT
- DELETE
- PATCH (częsciowa aktualizacja)
Czym jest zasób (resource) w kontekście REST?
- obiekt lub encja, która można adresować za pomocą URL
- zasoby mogą być reprezentowane w róznych formatach - JSON, XML
Jakie są główne cechy REST API?
- Bezstanowość (Statelessness)
- Klient-serwer
- Cacheable (Możliwość cachowania):
- jednolity interfejs
- Warstwowy system (Layered System):
- Kod na żądanie (opcjonalnie):
Bezstanowość (Statelessness)
Każde żądanie od klienta do serwera musi zawierać wszystkie informacje potrzebne do jego obsługi. Serwer nie przechowuje informacji o stanie klienta między żądaniami.
Klient-serwer:
Architektura REST oddziela interfejs użytkownika od danych przechowywanych na serwerze, co ułatwia rozwój obu komponentów niezależnie.
Cacheable (Możliwość cachowania):
Odpowiedzi od serwera mogą być oznaczone jako cacheable lub non-cacheable. Jeśli są cacheable, mogą być przechowywane przez klienta i ponownie używane, co poprawia wydajność.
Jednolity interfejs:
REST definiuje zestaw ograniczeń dla tworzenia jednolitego interfejsu, co ułatwia interakcję i zrozumienie API.
Warstwowy system (Layered System):
Klient komunikuje się z warstwą pośrednią, niekoniecznie bezpośrednio z serwerem końcowym. To pozwala na zwiększenie skalowalności.
Kod na żądanie (opcjonalnie)
Serwery mogą tymczasowo rozszerzyć lub dostosować funkcjonalność klienta przesyłając mu kod do wykonania.
Jakie są najczęstsze kody błędów HTTP w REST API i co one oznaczają?
- 400 BAD REQUEST
- 401 Unauthrozied
- 403 Forbidden
- 404 Not found
- 405 Method Not allowed
- 429 to many request
- 500 Internal server error
Jakie są dobre praktyki w nazewnictwie endpointów w REST API?
- użycie liczby mnogiej dla nazw zasobów (np. /users zamiast /user),
- unikanie wielkich liter,
- użycie podkreślników lub myślników do łączenia słów
- używanie rzeczowników (a nie czasowników) w nazwach zasobów.
Co to jest HTTP i jakie jest jego główne zastosowanie?
- (Hypertext Transfer Protocol)
- protokół aplikacji służący do przesyłania dokumentów hipertekstowych, takich jak HTML
- podstawa każdego przesyłania danych w sieci WWW.
Jak nagłówki HTTP są używane w RESTful API?
- Określenia formatu odpowiedzi (np. Accept: application/json).
- Kontroli cache’owania (np. Cache-Control).
- Przesyłania danych uwierzytelniających (np. Authorization).
-
Informowania o typie zawartości (Content-Type).
i wielu innych funkcjonalności.
Co to jest REST API?
- zbiór wytycznych i reguł dotworzenia interfejsu, który pozwala na interakcję z systemem za pomocą standardowych metod HTTP.
- jest zorientowane na zasoby, co oznacza, że adresy URL (endpoiny) odnoszą się zazwyczaj do konkretnych zasobów (np. użytkowników, produktów) i są manipulowane za pomocą standardowych metod
- komunikacja następuje najczęściej między aplikacją kliencką a aplikacją serwerową