Sobes.tech
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.