Junior — Middle
Môžeš vysvetliť základné princípy architektúry REST a ako sa implementujú pri vývoji API?
sobes.tech AI
Odpoveď od AI
REST (Reprezentatívny Stav Prenosu) je architektonický štýl na tvorbu webových služieb, založený na rade princípov:
- Klient-server architektúra: klient a server sú oddelení, čo uľahčuje vývoj a škálovanie.
- Bezstavový (stateless): každý požiadavka od klienta na server musí obsahovať všetky potrebné informácie, server neukladá stav medzi požiadavkami.
- Cacheovanie: odpovede môžu byť uložené v cache na zvýšenie výkonu.
- Jednotné rozhranie: používanie štandardných HTTP metód (GET, POST, PUT, DELETE) na operácie s prostriedkami.
- Identifikácia prostriedkov cez URI: každý prostriedok má jedinečnú adresu.
- Viacvrstvový systém: architektúra môže pozostávať z viacerých vrstiev, ako proxy, gateway.
Pri vývoji REST API sa tieto princípy implementujú takto:
- Prostriedky (napríklad používatelia, produkty) sú reprezentované vo forme URL, napríklad
/users/123. - Používajú sa HTTP metódy: GET na získanie, POST na vytvorenie, PUT/PATCH na aktualizáciu, DELETE na odstránenie.
- Server neukladá relácie, všetky údaje na spracovanie požiadavky sa prenášajú v ňom.
- Odpovede môžu obsahovať hlavičky pre cache.
- Formáty dát sú zvyčajne JSON alebo XML.
Príklad požiadavky na získanie používateľa:
GET /users/123 HTTP/1.1
Host: example.com
Accept: application/json
Odpoveď:
{
"id": 123,
"name": "Ivan Ivanov"
}