Senior
Aké typy webových API poznáte? V čom sa podstatne líši REST od RPC?
sobes.tech AI
Odpoveď od AI
Webové API existujú v rôznych typoch, z ktorých hlavné sú:
- REST (Representational State Transfer) — architektonický štýl, ktorý využíva HTTP metódy (GET, POST, PUT, DELETE) na prácu s prostriedkami, ktoré sú identifikované URI. REST je zameraný na prostriedky a ich stavy.
- RPC (Remote Procedure Call) — volanie vzdialených procedúr alebo funkcií, kde klient volá metódy servera, akoby boli lokálne. Zvyčajne sa prenášajú mená metód a parametre.
- GraphQL — jazyk dotazov, ktorý umožňuje klientovi žiadať presne tie údaje, ktoré potrebuje.
Rozdiely medzi REST a RPC:
- REST pracuje s prostriedkami a ich stavmi, nie s volaniami funkcií.
- V REST sú operácie štandardizované HTTP metódami, v RPC sa volajú konkrétne metódy s názvami.
- REST je viac zameraný na štruktúru dát a ich prezentáciu, RPC na akcie.
Príklad:
REST požiadavka na získanie používateľa:
GET /users/123
RPC požiadavka na získanie používateľa:
POST /rpc
{
"method": "GetUser",
"params": { "id": 123 }
}
Takže, REST je viac deklaratívny a zameraný na prostriedky, zatiaľ čo RPC na volanie procedúr.