REST API Flashcards

1
Q

Co to jest REST i czym się charakteryzuje?

A
  • 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.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Jakie są typowe metody HTTP używane w RESTful API?

A
  • GET
  • POST
  • PUT
  • DELETE
  • PATCH (częsciowa aktualizacja)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Czym jest zasób (resource) w kontekście REST?

A
  • obiekt lub encja, która można adresować za pomocą URL
  • zasoby mogą być reprezentowane w róznych formatach - JSON, XML
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Jakie są główne cechy REST API?

A
  1. Bezstanowość (Statelessness)
  2. Klient-serwer
  3. Cacheable (Możliwość cachowania):
  4. jednolity interfejs
  5. Warstwowy system (Layered System):
  6. Kod na żądanie (opcjonalnie):
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Bezstanowość (Statelessness)

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Klient-serwer:

A

Architektura REST oddziela interfejs użytkownika od danych przechowywanych na serwerze, co ułatwia rozwój obu komponentów niezależnie.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Cacheable (Możliwość cachowania):

A

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ść.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Jednolity interfejs:

A

REST definiuje zestaw ograniczeń dla tworzenia jednolitego interfejsu, co ułatwia interakcję i zrozumienie API.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Warstwowy system (Layered System):

A

Klient komunikuje się z warstwą pośrednią, niekoniecznie bezpośrednio z serwerem końcowym. To pozwala na zwiększenie skalowalności.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Kod na żądanie (opcjonalnie)

A

Serwery mogą tymczasowo rozszerzyć lub dostosować funkcjonalność klienta przesyłając mu kod do wykonania.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Jakie są najczęstsze kody błędów HTTP w REST API i co one oznaczają?

A
  • 400 BAD REQUEST
  • 401 Unauthrozied
  • 403 Forbidden
  • 404 Not found
  • 405 Method Not allowed
  • 429 to many request
  • 500 Internal server error
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Jakie są dobre praktyki w nazewnictwie endpointów w REST API?

A
  • 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.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Co to jest HTTP i jakie jest jego główne zastosowanie?

A
  • (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.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Jak nagłówki HTTP są używane w RESTful API?

A
  • 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.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Co to jest REST API?

A
  • 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ą
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Zalety REST

A

-oparty na HTTP - standardowy protokół intenetowy
- bezstanowość - Każde żądanie od klienta do serwera musi zawierać wszystkie informacje
- skalowalność - Dzięki bezstanowości i bezsesyjności REST API jest bardzo skalowalne
- wydajność - wykorzystanie metod HTTP i kodów odpowiedzi pozwala na optymalizację komunikacji między klientem a serwerem.
- szeroko przyjęty
- Nie jest związane z technologią

17
Q

URI

A
  • Uniform Resource Identifier
  • ciąg znaków służący do identyfikacji zasobu
18
Q

URL

A
  • Uniform Resource Locator
  • konkretny typ URI, który nie tylko identyfikuje zasób, ale również dostarcza sposób na lokalizację tego zasobu poprzez opisanie jego głównego dostępu
19
Q

Klient

A
  • program komputerowy lub urządzenie, które wysyła żądanie do serwera w celu uzyskania pewnych usług, danych lub funkcji
  • Przykładowo, przeglądarka internetowa
20
Q

Serwer

A
  • program lub urządzenie, które odbiera żądanie klienta dostarcza odpowiedź.
21
Q

API

A
  • zestaw reguł i definicji, które pozwalają aplikacjom komunikować się ze sobą
  • Umożliwia to programistom dostęp do określonych funkcji lub danych w innej aplikacji, serwisie lub platformie bez konieczności zagłębiania się w szczegóły wewnętrzne danego systemu
22
Q
A