Koja je razlika između metoda PUT i POST? Kako se ponašaju pri ponovnom slanju istog zahteva? Šta radi PATCH?
sobes.tech АИ
Одговор од АИ
HTTP PUT и POST metode se razlikuju po semantici i ponašanju:
-
PUT — idempotentna metoda, koristi se za potpuno ažuriranje resursa na datom URL-u. Ponovno slanje iste PUT zahteva neće promeniti rezultat, jer će resurs biti prepisan istim podacima.
-
POST — neidempotentna metoda, obično se koristi za kreiranje novih resursa ili izvršavanje akcija. Ponovno slanje POST zahteva može dovesti do duplikata ili ponovnog izvršenja operacije.
-
PATCH — koristi se za delimično ažuriranje resursa, šaljući samo izmenjena polja. Za razliku od PUT, koji zamenjuje ceo resurs, PATCH primenjuje izmene na postojećem objektu.
Primer:
PUT /users/123
{
"name": "Иван",
"age": 30
}
PATCH /users/123
{
"age": 31
}
POST /users
{
"name": "Иван",
"age": 30
}
Ponovno slanje PUT sa istim podacima neće promeniti resurs, ponovno slanje POST će kreirati novog korisnika, a ponovno slanje PATCH će ponovo ažurirati starost.