IT-Swarm.Net

Koja je razlika između PUT, POST i PATCH?

Koja je razlika između PUT, POST i PATCH metoda u HTTP protokolu?

189
selva kumar

POST

HTTP.POST može se koristiti kada klijent šalje podatke na poslužitelj, a poslužitelj će odlučiti URI za novostvoreni resurs. Metoda POST upotrebljava se za zahtijevanje da izvorni poslužitelj prihvati entitet koji je priložen u zahtjevu kao novog podređenog resursa koji je prepoznao URI zahtjeva u liniji zahtjeva.

STAVITI

HTTP.PUT može se koristiti kada klijent šalje podatke na poslužitelj, a klijent određuje URI za novostvoreni resurs. Metoda PUT zahtijeva da zatvoreni entitet bude pohranjen u priloženom URI-u zahtjeva. Ako se Request-URI odnosi na već postojeći resurs, priloženi entitet TREBA se smatrati modificiranom verzijom one koja se nalazi na poslužitelju izvora. Ako Uquest-URI ne ukazuje na postojeći resurs i da URI može definirati kao novi resurs od strane korisničkog agenta koji zahtijeva, Izvorni poslužitelj može stvoriti resurs s tim URI-om.

PATCH

HTTP.PATCH se može koristiti kad klijent šalje jednu ili više promjena koje primijeni poslužitelj. PATCH metoda zahtijeva da se skup promjena opisanih u entitetu zahtjeva primijeni na resurs koji je identificiran putem URI-a zahtjeva. Skup promjena predstavljen je u obliku koji se zove patch dokument.

Više informacija potražite u nastavku navedenog URL-a

PUT vs. POST u REST-

175
Litisqe Kumar

Razlika između PUT, POST, GET, DELETE i PATCH U HTTP glagola:

Najčešće korišteni HTTP glagoli POST, GET, PUT, DELETE slični su operacijama CRUD (Create, Read, Update, Delete) u bazi podataka. Navedimo ove HTTP glagole u glavnom slučaju. Dakle, u nastavku je usporedba među njima.

  1. stvoriti - POST
  2. čitati - DOBITI
  3. ažuriranje - PUT
  4. izbriši - DELETE

PATCH: Podnosi djelomičnu izmjenu resursa. Ako trebate ažurirati samo jedno polje za resurs, možda želite koristiti PATCH metodu.

Napomena:
Budući da POST, PUT, DELETE modificira sadržaj, testovi sa fiddlerom za donji url samo oponašaju nadogradnje. To zapravo ne briše ili ne mijenja. Samo možemo vidjeti kodove statusa da provjerimo pojavljuju li se umetanja, ažuriranja, brisanja.

URL: http://jsonplaceholder.typicode.com/posts/

1) GET:

GET je najjednostavnija vrsta metode HTTP zahtjeva; onaj koji preglednici koriste svaki put kad kliknete vezu ili unesete URL u adresnu traku. Upućuje poslužitelja da klijentu prenosi podatke identificirane putem URL-a. Podaci se nikada ne smiju mijenjati na strani poslužitelja kao rezultat GET zahtjeva. U tom smislu, GET zahtjev je samo za čitanje.

Provjera s Fiddlerom ili PostManom: Pomoću fiddlera možemo provjeriti odgovor. Otvorite fider i odaberite karticu Compose. Specificirajte glagol i URL kao što je prikazano u nastavku i kliknite Execute da provjerite odgovor.

Glagol: GET

url: http://jsonplaceholder.typicode.com/posts/

Odgovor: Odgovor ćete dobiti kao:

"userId": 1, "id": 1, "title": "sunt aut ...", "body": "quia et suscipit ..."

Na putu "sretan" (ili bez pogreške) GET vraća reprezentaciju u XML ili JSON i HTTP kôd odgovora od 200 (OK). U slučaju pogreške najčešće se vraća 404 (NOT FOUND) ili 400 (BAD REQUEST).

2) POST:

Glagol POST uglavnom se koristi za stvaranje novih resursa. Konkretno, koristi se za stvaranje podređenih resursa. Odnosno, podređeni nekom drugom izvoru (npr. Nadređenom).

Nakon uspješne izrade, vratite HTTP status 201, vraćajući zaglavlje lokacije s vezom na novostvoreni resurs sa 201 HTTP statusom.

Provjera s Fiddlerom ili PostManom: Pomoću fiddlera možemo provjeriti odgovor. Otvorite fider i odaberite karticu Compose. Specificirajte glagol i URL kao što je prikazano u nastavku i kliknite Execute da provjerite odgovor.

Glagol: POST

url: http://jsonplaceholder.typicode.com/posts/

tijelo zahtjeva:

podaci: {naslov: 'foo', tijelo: 'bar', userId: 1000, Id: 1000}

Odgovor: Kôd odgovora dobili biste kao 201.

Ako želimo provjeriti umetnuti zapis s Id = 1000 promijenite glagol u Get i upotrijebite isti url i kliknite Execute.

Kao što je ranije rečeno, navedeni url dopušta samo čitanje (GET), ažurirani podaci ne možemo realno čitati.

3) PUT:

PUT se najčešće koristi za ažuriranje mogućnosti, PUTOVANJE na poznati izvorni URI s tijelom zahtjeva koje sadrži novo ažuriranu predstavu izvornog resursa ,.

Provjera s Fiddlerom ili PostManom: Pomoću fiddlera možemo provjeriti odgovor. Otvorite fider i odaberite karticu Compose. Specificirajte glagol i URL kao što je prikazano u nastavku i kliknite Execute da provjerite odgovor.

Glagol: PUT

url: http://jsonplaceholder.typicode.com/posts/1

tijelo zahtjeva:

podaci: {naslov: 'foo', tijelo: 'bar', userId: 1, Id: 1}

Odgovor: Nakon uspješnog ažuriranja vraća 200 (ili 204 ako ne vrati bilo kakav sadržaj u tijelu) s PUT-a.

4) DELETE:

DELETE je prilično lako razumjeti. Koristi se za brisanje resursa identificiranog URI-om.

Nakon uspješnog brisanja vratite HTTP status 200 (OK) zajedno s tijelom odgovora, možda predstavljanje izbrisane stavke (često zahtijeva preveliku propusnost) ili zamotan odgovor (pogledajte Vrijednosti povratka dolje). Ili to ili vratite HTTP status 204 (NO CONTENT) bez tijela odgovora. Drugim riječima, preporučeni odgovori su status 204 bez tijela ili odgovor u stilu JSEND i HTTP status 200.

Provjera s Fiddlerom ili PostManom: Pomoću fiddlera možemo provjeriti odgovor. Otvorite fider i odaberite karticu Compose. Specificirajte glagol i URL kao što je prikazano u nastavku i kliknite Execute da provjerite odgovor.

Glagol: DELETE

url: http://jsonplaceholder.typicode.com/posts/1

Odgovor: Nakon uspješnog brisanja vraća HTTP status 200 (OK) zajedno s tijelom odgovora.

Primjer između PUT i PATCH

STAVI

Ako moram promijeniti svoje ime, pošaljem PUT zahtjev za ažuriranje:

{"first": "Nazmul", "last": "hasan"} Dakle, ovdje kako bismo ažurirali ime potrebno je ponovo poslati sve parametre podataka.

flaster:

Zahtjev za zakrpu kaže da ćemo poslati samo one podatke koje trebamo izmijeniti bez izmjene ili učinka na druge dijelove podataka. Na primjer: ako trebamo ažurirati samo ime, prelazimo samo ime.

Molimo pogledajte niže linkove za više informacija:

https://jsonplaceholder.typicode.com/

https://github.com/typicode/jsonplaceholder#how-to

Koja je glavna razlika između PATCH i PUT zahtjeva?

http://www.restapitutorial.com/lessons/httpmethods.html

145
Krishna

PUT = zamijenite CIJELU RESURU s novom predstavljenom predstavom

PATCH = zamijenite dijelove izvorišta s navedenim vrijednostima I | ILI ostali dijelovi resursa se ažuriraju koje niste naveli (vremenske oznake) I | ILI ažuriranje učinaka resursa s drugim resursima (odnosi)

https://laracasts.com/discuss/channels/general-discussion/whats-the-differences-between-put-and-patch?page=1

34
Ankit Rai

Donja definicija je iz primjera iz stvarnog svijeta.

primjer primjera
Za sve podatke klijenta spremamo identifikator kako bismo pronašli te podatke klijenta i taj ćemo identifikator poslati tom klijentu na referencu.

  1. POST

    • Ako Klijent pošalje podatke bez ikakvog identifikatora pomoću metode POST tada ćemo ih pohraniti i dodijeliti novu identifikator.
    • Ako Klijent opet pošalje iste podatke bez ikakvog identifikatora pomoću metode POST, tada ćemo ga pohraniti i dodijeliti novi identifikator.
    • napomena: kopiranje je ovdje dopušteno
  2. STAVITI

    • Ako klijent pošalje podatke s identifikatorom, tada ćemo provjeriti postoji li taj identifikator. Ako identifikator postoji, ažurirat ćemo podatke, stvorit ćemo ih i dodijeliti novu identifikator.
  3. ZAKRPA

    • Ako klijent pošalje podatke s identifikatorom, tada ćemo provjeriti postoji li taj identifikator. Ako identifikator postoji, ažurirat ćemo podatke, izbacićemo izuzetak.

Napomena: Na metodi Put, Ne bacamo izuzetak ako identifikator nije pronađen. Ali u metodi Patch bacamo izuzetak ako identifikator nije pronađen.

Javite mi ako imate bilo kakva pitanja o gore navedenom.

4
Yokesh Waran

Vrste zahtjeva

  • stvoriti - POST
  • čitati - DOBITI
  • stvoriti ili ažurirati - PUT
  • izbriši - DELETE
  • ažuriranje - PATCH

GET/PUT je idempotentan PATCH može ponekad biti i idempotentan

Što je idempotentno - Znači, ako ispitamo upit više puta, ne bi trebalo utjecati na rezultat. (Isti ishod. Pretpostavimo da je krava trudna i ako je uzgajamo ponovo, ne može se više puta predskazati)

get: -

jednostavan get. Nabavite podatke s poslužitelja i pokažite ih korisniku

{
id:1
name:parth
email:x@x.com
}

post: -

stvorite novi resurs na bazi podataka. To znači da dodaje nove podatke. To nije bezveze.

put: -

Stvorite novi resurs na neki drugi način dodajte postojećem. Idempotentan jer će ažurirati isti resurs svaki put, a izlaz će biti isti. ex. - početni podaci

{
id:1
name:parth
email:x@x.com
}
  • izvršite put-localhost/1 put e-pošta: ppp@ppp.com
{
id:1
email:ppp@ppp.com
}

patch

pa sada stigao zahtjev za zakrpom PATCH može biti ponekad bezveze

id:1
name:parth
email:x@x.com
}

naziv zakrpe: w

{
id:1
name:w
email:x@x.com
}
 HTTP metoda 
 GET yes 
 POST br. 
 PUT yes 
 PATCH no * 
 OPTIONS yes 
 HEAD yes 
 DELETE da 

Resursi: Idempotent - što je identitet?

4
Parth Patel