REST-API — ressourcer, endpoints, HTTP-verber (GET/POST/PUT/DELETE)
It A · STX · A-niveau · Netværk og protokoller
💻 REST-API — ressourcer, endpoints, HTTP-verber (GET/POST/PUT/DELETE)
REST (Representational State Transfer) = arkitektur-stil for web-APIs. Defineret af Roy Fielding (2000, PhD). Modsat SOAP (gammel, XML-baseret), er REST simpel + skalerbar.
6 design-principper:
1.
Client-server — adskillelse af interesser.
2.
Stateless — hver request indeholder al info; server gemmer ikke session.
3.
Cacheable — responses kan caches.
4.
Uniform interface — standard HTTP-verber.
5.
Layered system — kan have proxy/gateway-lag.
6. Code on demand (optional).
Ressourcer: identificeres med URI'er. Eksempler: /users (alle brugere), /users/123 (specifik bruger), /users/123/orders (ordrer for bruger 123).
HTTP-verber (CRUD):
1.
GET — Read. Hent ressource. Sikker (no side effects), idempotent. GET /users/123 returnerer bruger 123.
2.
POST — Create. Opret ny ressource. IKKE idempotent (POST 2x = 2 ressourcer). POST /users med body opretter ny bruger.
3.
PUT — Update (full). Erstat hele ressourcen. Idempotent (PUT 2x = samme resultat). PUT /users/123 med komplet body.
4.
PATCH — Update (partial). Modificér nogle felter. PATCH /users/123 {"email":"new@..."}.
5.
DELETE — Remove. Idempotent. DELETE /users/123.
Status-koder: 200 OK, 201 Created, 204 No Content, 301 Moved, 400 Bad Request, 401 Unauthorized, 403 Forbidden, 404 Not Found, 500 Server Error.
Format: JSON er de facto standard. XML i nogle ældre APIs.
Authentication: Basic Auth, OAuth 2.0, JWT, API keys. **Version
Læringsmål
- Redegøre for REST-arkitekturens principper
- Designe endpoints med relevante HTTP-verber
- Anvende et REST-API i et eget projekt
Sådan kan du arbejde med emnet
- Design et REST-API for en bogdatabase med endpoints til at hente, oprette, opdatere og slette bøger
- Forklar, hvad der er konventionerne for REST-API-design, og hvad der gør et API RESTful
- Diskutér, hvad der er forskellen på PUT og PATCH i en REST-API
Arbejd iterativt med prototyper og dokumentation. Test, evaluér og dokumentér.
Øv dette emne med AI — quizzer, forklaringer og feedback tilpasset dit niveau.
Prøv Fagportalen gratis