HTTP-begärandemetoder förklarade
HTTP definierar nio standardbegärandemetoder, men det mesta av den dagliga trafiken använder bara några få. Tabellen förklarar varje metod, om den är säker och idempotent, och vilka koder ett lyckat anrop returnerar.
| Metod | Syfte | Säker? | Idempotent? | Status vid framgång |
|---|---|---|---|---|
| GET | Retrieve a resource | Yes | Yes | 200 OK |
| HEAD | Retrieve headers only, no body | Yes | Yes | 200 OK |
| POST | Create a resource or trigger an action | No | No | 201 Created |
| PUT | Replace a resource entirely | No | Yes | 200 OK / 204 No Content |
| PATCH | Apply a partial update | No | No | 200 OK |
| DELETE | Remove a resource | No | Yes | 200 OK / 204 No Content |
| OPTIONS | CORS preflight; list allowed methods | Yes | Yes | 204 / 200 OK |
| TRACE | Echo the request back for diagnostics | Yes | Yes | 200 OK |
| CONNECT | Open a tunnel, e.g. HTTPS via a proxy | No | No | 200 OK |
Anteckningar
- Säker betyder att metoden aldrig ändrar serverns tillstånd: bara GET, HEAD, OPTIONS och TRACE är säkra.
- Idempotent betyder att upprepade anrop ger samma resultat som ett enda anrop: PUT, DELETE och GET uppfyller det, men inte POST och PATCH.
- När en route inte accepterar en metod svarar servern 405 Method Not Allowed och inkluderar vanligtvis en Allow-rubrik.
Vanliga frågor
- Vad är skillnaden mellan GET och POST?
- GET hämtar en resurs utan biverkningar och kan upprepas säkert; parametrarna skickas i URL:en. POST skapar något eller utlöser en åtgärd, kan ändra tillstånd och bör inte upprepas blint.
- Vad innebär det att en HTTP-metod är säker?
- En säker metod ändrar aldrig serverns tillstånd och kan därför anropas utan risk. GET, HEAD, OPTIONS och TRACE är säkra; POST, PUT, PATCH och DELETE är det inte.
- Vad är skillnaden mellan PUT och PATCH?
- PUT ersätter hela resursen med det du skickar; PATCH gör en partiell ändring av utvalda fält. PUT är idempotent, upprepning ger samma resultat; PATCH är det oftast inte.
- Vad gör HEAD-metoden?
- HEAD fungerar som GET men returnerar ingen svarskropp. Den är användbar för att kontrollera om en resurs finns, dess storlek eller rubriker, utan att ladda ner hela innehållet.