Middle
Aké sú princípy REST?
sobes.tech AI
Odpoveď od AI
Nasledujúce princípy REST:
- Architektúra klient-server: Oddelenie zodpovedností medzi klientom (používateľ služby) a serverom (poskytovateľom služby). To podporuje prenositeľnosť klientského kódu a škálovateľnosť servera.
- Bez stavu (Stateless): Každý požiadavok od klienta ku serveru musí obsahovať všetky informácie potrebné na jeho spracovanie. Server neukladá stav klienta medzi požiadavkami.
- Cacheovateľné: Server môže explicitne uviesť, či môžu byť dáta uložené do cache od klienta alebo medziľahlých vrstiev. To zlepšuje výkon a škálovateľnosť.
- Jednotný rozhranie: Najdôležitejší princíp, ktorý zahŕňa štyri podprincípy:
- Identifikácia zdrojov: Zdroje sú identifikované jedinečnými URI.
- Manipulácia so zdrojmi cez reprezentácie: Klient interaguje so zdrojmi získavaním ich reprezentácií (napríklad vo formáte JSON alebo XML) a odosielaním nových reprezentácií na zmenu stavu zdroja.
- Samoodpovedajúce správy: Každá správa obsahuje dostatok informácií na to, aby ju príjemca pochopil a spracoval. Používajú sa štandardné hlavičky HTTP.
- Hypermedia ako motor stavu aplikácie (HATEOAS): Klient musí nájsť informácie o dostupných akciách a možných prechodoch medzi stavmi aplikácie z hypermedialinkov vložených do reprezentácií zdrojov.
- Systém v vrstách: Systém môže byť organizovaný s použitím medziľahlých vrstiev (napríklad proxy, cache, brány), cez ktoré prechádzajú požiadavky a odpovede. Klient nevie, či komunikuje priamo s konečným serverom alebo cez vrstvy.
- Kód na požiadanie (Code on Demand - voliteľné): Server môže dočasne rozšíriť funkčnosť klienta prenášaním spustiteľného kódu (napríklad JavaScript). Tento princíp je voliteľný pre súlad s REST.