Please enable JavaScript.
Coggle requires JavaScript to display documents.
DNA Tydzien 9 (Lekcja 09.01 Podstawy REST (Zasady (bezstanowosc (nie…
DNA Tydzien 9
Lekcja 09.01 Podstawy REST
Co to ?
Styl architektoniczny
podstawowe zasady
bogaty zestaw wskazowek
Zasady
separacja klient-serwer
bezstanowosc
nie przechowujemy stanu w formie ulotnej (na serwerze)
powodzenie zadania nie moze byc powiazane z poprzednim
stan jest zawsze
cache'owalnosc
elminuje czesc komunikacji
:odpowiednie naglowki kontoluja mozliwosc i parametry cache'owania
spojny interfejs
zobowiazanie do zastosowania zasad protokolu np HTTP
pozwala na reuzycie bibliotek
wykorzystuje samoopisujace sie zadania i odpowiedzi
warstwowosc
poprawnosc komunikacji nie moze zalezec od ilosci komponentow pomiedzy klientem i serwerem
dodanie CDN/cache/proxy/load-balancera nie moze miec wplywu na zachowanie strony
Poziomu dojrzalosci (Richardsona)
Zasoby
Czasowniki HTTP
Bagienko XML
Hipermedia
Lekcja 09.04 Cache'owanie
Po co cache'owac?
eliminacja opoznien
walidujemy aktualnosc posiadanego zasobu
poprawa dostepnosci
Kontrola cache
naglowerk cache-control
dyrektywy cache-control
private (mozliwosc zapisu na cache'u prywatnym)
no-cache (wymasza walidacje posiadanej kopii)
public (mozliwosc zapisu na publicznym cache;u)
no-store (wylacza mozliwosc przechowywania kopii)
waznosc
s-maxage
max-stale
max-age
walidacja
must-revalidate
proxy-revalidate
naglowek expires (okresla date waznosci)
Optymistyczne blokowanie
REST nie wspiera natywnie optymistycznego blokowania
mozemy je obsluzyc przy pomocy ETag i zadania warunkowego If-match
Serwer sprawdza wersje w If-Match i jesli sie zgadza zwraca 200 jesli nie 412 (precondition failed)
Lekcja 09.02 Zasoby w REST
Lekcja 09.03 Domena a REST
Lekcja 09.05 Wersjonowanie
Lekcja 09.06 Dokumentacja REST
Lekcja 09.07 Testowanie API
Lekcja 09.08 CORS (Cross origin resource sharing)