Sari la conținut
← Construiește un REST API cu Laravel
Progres curs 0 / 7 lecții (0%)

Ce înseamnă un API bun

Un API bun e previzibil: cine îl folosește poate ghici cum funcționează un endpoint nou după ce a văzut două. Asta înseamnă convenții consecvente — verbe HTTP, coduri de status, structura răspunsului, denumirea resurselor — respectate peste tot.

Principii REST

  • Resursele sunt substantive la plural: `/articole`, `/comenzi`.
  • Verbele HTTP dau acțiunea: GET (citește), POST (creează), PUT/PATCH (actualizează), DELETE (șterge).
  • `GET /articole` = listă, `GET /articole/1` = unul, `POST /articole` = creează.
  • Fără verbe în URL: nu `/getArticole` sau `/articole/delete/1`.

Coduri de status corecte

  • 200 OK — succes cu corp.
  • 201 Created — resursă creată (POST).
  • 204 No Content — succes fără corp (DELETE).
  • 400 Bad Request — cererea e malformată.
  • 401 / 403 — neautentificat / neautorizat.
  • 404 Not Found — resursa nu există.
  • 422 Unprocessable Entity — validare eșuată.
  • 500 — eroare de server (bug).

Structura răspunsului

// consecvent, mereu:
{
  "data": { ... }          // sau [ ... ] pentru liste
}
// pentru liste paginate:
{
  "data": [ ... ],
  "meta": { "current_page": 1, "total": 137, "per_page": 15 },
  "links": { "next": "...", "prev": null }
}

Versionare

Pune versiunea în URL de la început: `/api/v1/articole`. Chiar dacă nu ai încă v2, structura permite să introduci schimbări incompatibile fără să strici clienții existenți.

Exercițiu

Proiectează pe hârtie API-ul pentru un blog: listează toate endpoint-urile (metodă + cale) pentru articole și comentarii, cu codul de status de succes pentru fiecare. Verifică: doar substantive la plural, verbe HTTP pentru acțiuni.

Greșeli frecvente

  • Verbe în URL (`/createArticol`).
  • Întorci mereu 200, chiar și la erori (clientul nu poate distinge).
  • Structură de răspuns diferită de la un endpoint la altul.
  • Nu versionezi și primul breaking change strică toți clienții.

De reținut

  • Resurse = substantive la plural; acțiune = verb HTTP.
  • Coduri de status corecte: 201, 204, 404, 422, nu doar 200/500.
  • Structură de răspuns consecventă (data / meta / links).
  • Versionează din prima: /api/v1/.

Pe scurt

Un API previzibil respectă convențiile REST peste tot: URL-uri de resurse, verbe HTTP, coduri de status corecte, răspunsuri uniforme.

Folosim cookie-uri esențiale pentru funcționarea site-ului și, cu acordul tău, cookie-uri de analiză și publicitate. Partenerii noștri, inclusiv Google, pot folosi cookie-uri pentru a afișa reclame relevante. Detalii în Politica de cookie-uri.