Hva er PUT?
PUT-metoden brukes til å oppdatere ressursene som er tilgjengelige på serveren. Vanligvis erstatter den det som finnes på mål-URL med noe annet. Du kan bruke den til å lage en ny ressurs eller overskrive en eksisterende. PUT ber om at den vedlagte enheten må lagres under den medfølgende URI (Uniform Resource Identifier).
I denne opplæringen lærer du:
- Hva er PUT?
- Hva er POST?
- Eksempel på PUT
- Eksempel på POST
- Forskjellen mellom PUT og POST
- Testing av et API med PUT-forespørsler
- Testing av et API med POST-forespørsler
- Fordeler med PUT-metoden
- Fordeler med POST-metoden
Hva er POST?
POST er en metode som støttes av HTTP og
viser at en webserver godtar dataene som er inkludert i brødteksten. POST brukes ofte av World Wide Web for å sende brukergenerert data til webserveren eller når du laster opp fil.
HOVEDFORSKJELL:
- PUT-metoden kalles når du må endre en enkelt ressurs mens POST-metoden kalles når du må legge til en underressurs.
- PUT-metodesvar kan hurtigbufres, men du kan ikke cache PUT-metodesvar.
- Du kan bruke UPDATE-spørring i PUT mens du kan bruke create query i POST.
- I PUT-metoden bestemmer klienten hvilken URI-ressurs som skal ha, og i POST-metoden bestemmer serveren hvilken URI-ressurs som skal ha.
- PUT fungerer som spesifikk mens POST fungerer som abstrakt.
- Hvis du sender den samme PUT-forespørselen flere ganger, vil resultatet forbli det samme, men hvis du sender den samme POST-forespørselen flere ganger, vil du motta forskjellige resultater.
- PUT-metoden er idempotent mens POST-metoden ikke er idempotent.
Eksempel på PUT
Her er webservereksemplet på en PUT-metode:
HTTP PUT http://www.google.com/users/234
HTTP PUT http://www.google.com/users/234/accounts/567
Be om
PUT /new.html HTTP/1.1Host: example.comContent-type: text/htmlContent-length: 20New File
Svar
Hvis målressursen har gjeldende representasjon og er modifisert med tilstanden til den vedlagte representasjonen, skal serveren sende to svar. Den første responskoden er 200 (OK), og den andre responskoden er 204 (Intet innhold).
Hvis målressursen ikke har noen representasjon, bør serveren informere brukeren ved å sende et 201-kode (opprettet) svar.
HTTP/1.1 201 CreatedContent-Location: /new.html
Eksempel på POST
Her er et eksempel på POST-metoden:
HTTP POST http://www.google.com/users
HTTP POST http://www.google.com/users/234/accounts
Et skjema som bruker standard applikasjonstype / x-www-form-urlencoded innholdstype:
POST /test HTTP/1.1Host: abc.exampleContent-Type: application/x-www-form-urlencodedContent-Length: 40field1=value1&field2=value2
Forskjellen mellom PUT og POST
Her er den viktige forskjellen mellom PUT og POST-metoden:
SETTE | POST |
Denne metoden er idempotent. | Denne metoden er ikke idempotent. |
PUT-metoden er anrop når du må endre en enkelt ressurs, som allerede er en del av ressursinnsamlingen. | POST-metoden er anrop når du må legge til en underressurs under ressursinnsamlingen. |
RFC-2616 viser at PUT-metoden sender en forespørsel om en lukket enhet som er lagret i den medfølgende forespørsels-URI. | Denne metoden ber serveren om å godta enheten som er vedlagt forespørselen. |
PUT-metodesyntaks er PUT / spørsmål / {spørsmål-id} | POST-metodesyntaks er POST / spørsmål |
PUT-metodesvar kan caches. | Du kan ikke cache PUT-metodesvar. |
PUT / vi / juice / orders / 1234 indikerer at du oppdaterer en ressurs som er identifisert med "1234". | POST / vi / juice / ordrer indikerer at du oppretter en ny ressurs og returnerer en identifikator for å beskrive ressursen. |
Hvis du sender den samme forespørselen flere ganger, vil resultatet forbli det samme. | Hvis du sender den samme POST-forespørselen mer enn én gang, vil du motta forskjellige resultater. |
PUT fungerer som spesifikk. | POST fungerer som abstrakt. |
Vi bruker UPDATE-spørring i PUT. | Vi bruker create query i POST. |
I PUT-metoden bestemmer klienten hvilken URI-ressurs som skal ha. | I POST-metoden bestemmer serveren hvilken URI-ressurs som skal ha. |
Testing av et API med PUT-forespørsler
Her er trinnene for å teste API med PUT-forespørsler:

Trinn 1) Oppdater ressurser med PUT-forespørsel.
Trinn 2) Bruk GET-metoden for ressurs. Hvis PUT-forespørselen lykkes, vil du motta nye data. Denne metoden mislykkes hvis de oppgitte dataene i forespørselen er ugyldige. Derfor vil den ikke oppdatere noe.
Testing av et API med POST-forespørsler
Her er trinnene for å teste API med POST-forespørsler:

Trinn 1) Opprett en ressurs ved hjelp av POST-forespørsel og sørg for at den returnerer 200 statuskode.
Trinn 2) Lag en GET-forespørsel for den ressursen og lagre dataene i riktig format.
Trinn 3) Du må legge til tester som sikrer at POST-forespørsler mislykkes med feil data.
Fordeler med PUT-metoden
Her er fordeler / fordeler ved å bruke PUT-metoden:
- Det hjelper deg å lagre den leverte enheten under den medfølgende URI
- Hvis den leverte enheten allerede eksisterer, kan du utføre oppdateringsoperasjonen, eller du kan opprette med den URI.
- Du kan opprette en ressurs så mange ganger du vil.
- Å lage en ressurs med PUT-metoden er veldig enkelt.
- Du trenger ikke å sjekke om brukeren har klikket på sendeknappen flere ganger eller ikke.
- Den kan identifisere enheten som følger med forespørselen.
Fordeler med POST-metoden
Her er fordeler / fordeler ved å bruke POST-metoden:
- Denne metoden hjelper deg med å bestemme ressurs-URI.
- Det er veldig enkelt å angi en ny ressursplasseringshode ved å bruke posisjonshode.
- Du kan sende en forespørsel om å godta enheten som en ny underordnet ressurs, som identifiseres av URI.
- Du kan sende brukergenererte data til webserveren.
- Det er veldig nyttig når du ikke vet URL for å beholde noen ressurs.
- Bruk POST når du trenger serveren, som styrer URL-generering av ressursene dine.
- POST er en sikker metode da forespørslene ikke forblir i nettleserloggen.
- Du kan enkelt overføre en stor mengde data ved hjelp av post.
- Du kan holde dataene private.
- Denne metoden kan brukes til å sende binære så vel som ASCII-data.