Sobes.tech
Junior

Rääkige meile REST API-s PUT meetodist.

sobes.tech AI

Vastus AI-lt

PUT meetodit kasutatakse ressursi loomise või uuendamise jaoks määratud URI-l.

Peamised omadused:

  • Idempotentsus: Sama PUT-päring korduv täitmine sama kehaga viib sama ressursi olekuni serveris (kuigi serveri vastus võib erineda).
  • Täielik asendamine: PUT-päring saadab täieliku uue ressursi esinduse, asendades olemasoleva.
  • Loomine või uuendamine: Kui määratud URI-l olevat ressurssi ei eksisteeri, loob PUT selle. Kui see eksisteerib — uuendab. Kui ressurss puudub, viib edukas PUT selle loomisele ning tavaliselt tagastab staatuse 201 Created. Olemasoleva ressursi uuendamine tagastab tavaliselt 200 OK või 204 No Content (kui vastuses pole keha).

Tüüpilised kasutusstsenaariumid:

  • Kasutaja täieliku profiili uuendamine.
  • Ressursi loomine, kui klient määrab selle URI.

Näide PUT-päringust:

PUT /users/123 HTTP/1.1
Host: api.example.com
Content-Type: application/json

{
  "id": 123,
  "name": "Uus Nimi",
  "email": "new.email@example.com"
}

Server saab selle päringu ja kas loob kasutaja ID-ga 123 või täielikult asendab selle ID-ga kasutaja teabe andmetega, mis on päringu kehas.

PUT erineb POST-ist järgmiselt:

  • PUT-i kasutatakse ressursi uuendamiseks või loomise tuntud URI-ga, mille määrab klient. POST-i kasutatakse ressursi loomisel, kus server määrab uue ressursi URI või tegeleb muude toimingutega, mis ei kuulu teiste HTTP-meetodite alla.
  • PUT on idempotentne, POST — mitte. Korduvad POST-päringud sama kehaga võivad luua mitu identset ressurssi või põhjustada erinevaid kõrvaltoimeid.

Võrdlustabel PUT ja POST:

Omadus PUT POST
Eesmärk Ressursi loomine või uuendamine Ressursi loomine, andmete saatmine
Idempotentsus Jah Ei
URI määramine Kliendi poolt Serveri poolt
Mõju ressursile Asendab või loob täielikult Tavaliselt lisab või teostab tegevust