A REST (Representational State Transfer) egy architekturális stílus webes API-khoz. Lényege: HTTP-kéréseken keresztül (GET, POST, PUT, DELETE) erőforrásokkal dolgozol — például a /users/123 az 123-as felhasználót adja vissza, a /orders a rendelések listáját.
A REST 5 alapelve
- Client–server szétválasztás — a frontend és backend független, külön fejleszthető és cserélhető.
- Stateless — minden kérés önmagában értelmezhető, a szerver nem tartja meg a kliens állapotát.
- Cache-elhetőség — HTTP-szabványra épül, jól viselkedik CDN és böngésző-cache mögött.
- Uniform interface — egységes URL-szerkezet, egységes HTTP-igék, egységes adatformátum (JSON).
- Layered system — közbeiktatható proxy, load balancer, gateway anélkül, hogy a kliens tudna róla.
HTTP-metódusok és státuszkódok
- GET /users/123 — adat lekérdezés (idempotens, nincs mellékhatás).
- POST /users — új erőforrás létrehozása.
- PUT /users/123 — teljes erőforrás-csere (a teljes objektum felülírása).
- PATCH /users/123 — részleges módosítás (csak a megadott mezők változnak).
- DELETE /users/123 — erőforrás törlése; státuszkód 200/204 = OK, 404 = nincs ilyen, 401 = nincs jogod.
REST vs. GraphQL — melyik mikor?
- REST egyszerűbb tanulni, jól dokumentálható (OpenAPI / Swagger), klassz cache-kompatibilitás.
- GraphQL flexibilisebb: egy lekérés több erőforrást is lehoz, csak azok a mezők jönnek vissza, amiket kérsz.
- REST előnye — érett ökoszisztéma, HTTP-cache, könnyű mobilra optimalizálni.
- GraphQL előnye — front-end-vezérelt fejlesztés, kevesebb roundtrip, type-safety.
- Hibrid lehetséges — sok cég REST-et használ publikus API-ra és GraphQL-t belső kliensekre.
Ha API-építést, integrációt vagy egyedi backend-fejlesztést tervezel, nézd meg az AI automatizáció és az egyedi weboldal-fejlesztés szolgáltatásunkat. Lásd még az API és webhook cikkeket.