Junior
Mely API-k nevezhetők RESTfulnak?
sobes.tech MI
Válasz az MI-től
A RESTful API-k megfelelnek a REST architektúra stílus alapelveinek:
- Kliens-szerver: A felelősségek szétválasztása a kliens, amely erőforrásokat kér, és a szerver, amely azokat szolgáltatja.
- Állapot nélküli (Stateless): Minden kérés a kliens részéről a szerverhez tartalmazza az összes szükséges információt a feldolgozáshoz. A szerver nem tartja nyilván a kliens munkamenet állapotát.
- Cache-elhető: A szervernek kifejezetten vagy implicit módon jeleznie kell, hogy a válaszok cache-elhetők-e a kliens vagy közbenső eszközök által.
- Réteges rendszer: A kliens nem tud különbséget tenni közvetlen szerverhívás és közbenső rétegek (proxy, load balancer stb.) közötti hívás között.
- Kód kérésre (opcionális): A szerver ideiglenesen bővítheti a kliens funkcionalitását végrehajtható kód (pl. JavaScript) átadásával.
- Egységes felület: A RESTful API legfontosabb alapelve. Négy korlátozásból áll:
- Erőforrások azonosítása: Az erőforrásokat URL-ek azonosítják.
- Erőforrások manipulálása reprezentációk révén: A kliens az erőforrások reprezentációinak megszerzésével lép kapcsolatba velük (pl. JSON, XML formátumban).
- Önmagát leíró üzenetek: Minden üzenet elegendő információt tartalmaz a feldolgozáshoz, beleértve a metaadatokat arról, hogyan kezelje az üzenetet és az erőforrást.
- HATEOAS (Hypermedia as the Engine of Application State): A szervernek hiperhivatkozásokat kell tartalmaznia a válaszaiban, amelyek lehetővé teszik a kliens számára a rendelkezésre álló műveletek felfedezését és az alkalmazás állapotai közötti navigációt. Ez a legkevésbé gyakran teljesülő elv.
A RESTful API-k a standard HTTP-módszereket (GET, POST, PUT, DELETE, PATCH) használják az URI-k által azonosított erőforrásokon végzett műveletekhez.
Például, egy GET kérés a /api/users/123 címre, az ID-je 123-as felhasználó reprezentációját kapja meg.