Treci la conținutul principal

Un API mic și complet

Este momentul să punem piesele laolaltă: un API pentru utilizatori cu cele cinci rute clasice —

POST /users creare · GET /users listare · GET /users/{id} citirea unuia · PUT /users/{id} înlocuire · DELETE /users/{id} ștergere.

Datele sunt păstrate într-un dicționar în memorie, așa că exemplul nu depinde de nimic altceva. (Un server real tratează cererile în paralel, așa că o versiune de producție ar proteja dicționarul cu un lacăt (lock) și probabil l-ar înlocui cu o bază de date — forma funcțiilor care tratează cererile nu s-ar schimba.)


Creare și listare

POST parsează JSON-ul primit, îi dă utilizatorului un id, îl salvează și răspunde cu 201 și înregistrarea creată — inclusiv id-ul, ca clientul să-l afle. GET îi returnează pe toți ca tablou JSON.

POST /users și GET /users

Două creări, apoi lista: fiecare POST răspunde cu 201 și utilizatorul salvat, iar GET-ul final îi arată pe amândoi — starea API-ului a crescut cu fiecare cerere.

Prompt
Scrie un program Python care implementează partea de creare și listare a unui REST API pentru utilizatori, peste un dicționar în memorie: POST /users parsează JSON-ul, atribuie un id și răspunde cu 201 și utilizatorul creat; GET /users răspunde cu tabloul JSON al tuturor utilizatorilor. Pornește serverul pe un port liber, creează utilizatorii Ana și Ben, listează-i și afișează fiecare cod de stare și fiecare corp.
Ieșire: program Python complet

Citire, înlocuire, ștergere

Rutele /users/{id} completează setul: citirea răspunde cu 200 sau 404, înlocuirea pune datele noi sub id-ul existent, ștergerea răspunde cu 204. După ștergere, același GET care funcționa înainte returnează corect 404 — resursa nu mai există.

GET, PUT și DELETE pe /users/{id}

Întreaga viață a unei resurse: o citim, o înlocuim (răspunsul conține noul nume), o ștergem și nu mai reușim s-o citim — fiecare pas cu codul de stare corect.

Prompt
Scrie un program Python care implementează GET, PUT și DELETE pentru /users/{id} peste un dicționar în memorie care conține inițial un utilizator: GET răspunde cu 200 sau 404 și JSON, PUT înlocuiește utilizatorul păstrând id-ul, DELETE răspunde cu 204. Pornește serverul pe un port liber și parcurge întregul ciclu de viață — citire, înlocuire, ștergere, citire din nou — afișând pentru fiecare pas metoda, codul de stare și corpul.
Ieșire: program Python complet