Sobes.tech
Junior

Čo je REST API?

sobes.tech AI

Odpoveď od AI

REST API je architektonický štýl na budovanie distribuovaných systémov. Hlavné princípy REST:

  • Bezstavovosť: Každá požiadavka od klienta na server musí obsahovať všetky potrebné informácie na spracovanie. Server neukladá stav klienta medzi požiadavkami.
  • Klient-Server: Jasné rozdelenie zodpovedností medzi klientom a serverom. Klient odosiela požiadavky, server ich spracováva.
  • Cacheovateľnosť: Server musí uviesť, či môžu byť odpovede uložené v cache od klienta alebo prostredníkov.
  • Systém v vrstách: Klient nemusí nutne komunikovať priamo s konečným serverom; môže to robiť cez medzi vrstvy (proxy, load balancery).
  • Jednotné rozhranie: Jednotný a štandardizovaný spôsob interakcie medzi klientom a serverom. Tento princíp zahŕňa:
    • Identifikáciu zdrojov: Zdroje (dáta) sú identifikované pomocou URL.
    • Manipuláciu so zdrojmi cez reprezentácie: Klient interaguje so zdrojmi, získava ich reprezentácie (napríklad JSON, XML) a odosiela nové reprezentácie na zmenu.
    • Samostatne popisné správy: Každá správa obsahuje dostatok informácií na pochopenie, ako ju spracovať.
    • HATEOAS (Hypertext As The Engine Of Application State): Zdroje by mali obsahovať odkazy (hyperlinky) na súvisiace zdroje a dostupné akcie.

REST API zvyčajne používa štandardné HTTP metódy na vykonávanie operácií nad zdrojmi:

  • GET: Získať zdroj alebo kolekciu zdrojov.
  • POST: Vytvoriť nový zdroj.
  • PUT: Kompletná aktualizácia existujúceho zdroja.
  • PATCH: Čiastočná aktualizácia existujúceho zdroja.
  • DELETE: Vymazať zdroj.

Príklad JSON reprezentácie zdroja:

{
  "id": 1, // Identifikátor
  "name": "Resource Name", // Názov zdroja
  "description": "Detailed description of the resource." // Popis zdroja
}

Testovanie REST API zahŕňa kontrolu:

  • Funkcionality (správnosť odpovedí na požiadavky).
  • Riešenie chýb.
  • Výkonu.
  • Bezpečnosti.
  • Súlad s dokumentáciou.