Middle
Razgovarajte o HTTP metodama i njihovoj idempotentnosti.
sobes.tech АИ
Одговор од АИ
HTTP metode određuju akciju koju klijent želi da izvrši nad resursom. Glavne metode:
GET: Dobavljanje resursa. Idempotentno je (ponavljajući zahtevi ne menjaju stanje na serveru).POST: Slanje podataka na obradu (npr. kreiranje novog resursa, slanje podataka iz obrasca). Obično nije idempotentno.PUT: Kreiranje ili ažuriranje resursa na datom URI-ju. Idempotentno je (ponovljeni zahtev sa istim podacima dovešće do istog stanja resursa).DELETE: Brisanje resursa na datom URI-ju. Idempotentno je (nakon prvog uspešnog zahteva, ponovljeni zahtevi neće menjati stanje resursa, jer je već obrisan).PATCH: Delimično menjanje resursa. Obično nije idempotentno, jer redosled operacija može biti važan.HEAD: Dobavljanje zaglavlja odgovoraGETbez tela odgovora. Idempotentno je.OPTIONS: Dobavljanje spiska podržanih metoda za resurs. Idempotentno je.
Idempotentnost znači da će višestruko izvršavanje istog zahteva dovesti do istog krajnjeg stanja sistema kao i jedno izvršenje. Ovo se odnosi samo na sporedne efekte na serveru. Odgovori servera mogu se razlikovati (npr. prvi DELETE zahtev može vratiti 200 OK, a sledeći — 404 Not Found).
Primeri neidempotentnih operacija:
- Višestruko dodavanje proizvoda u korpu pomoću
POST. - Povećanje brojača pomoću
POSTiliPATCH.
Primeri idempotentnih operacija:
- Višestruko dobijanje podataka pomoću
GET. - Kreiranje ili ažuriranje korisnika sa određenim ID pomoću
PUT. - Brisanje korisnika sa određenim ID pomoću
DELETE.
Idempotentnost je važna kada je potrebno ponovo poslati zahteve (npr. u slučaju mrežnih grešaka). Server može sigurno izvršiti idempotentni zahtev više puta, bez izazivanja neželjenih promena.