HTTP-statuskoder
Ett HTTP-svar börjar med en tresiffrig kod och en kort orsaksuttryck. Den första siffran är hela sammanfattningen: 1xx är preliminär, 2xx lyckades, 3xx pekar någon annanstans, 4xx skyller på begäran, 5xx skyller på servern. Om du bara kommer ihåg det kan du läsa en logg du aldrig har sett förut.
Orsaksfraserna här är de från RFC, på engelska, för det är vad som reser på ledningen — en server skickar "Not Found", inte en översättning av den, och en fras du söker efter i en logg måste matcha de bytes som faktiskt skickades.
De distinktioner som orsakar verklig problem är inuti klasserna snarare än mellan dem: 401 kontra 403, 301 kontra 308, och 502 kontra 503 svarar var och en på en annan fråga om vad som ska göras härnäst, och var och en används rutinmässigt för den andra.
1xx — Informativ
3Preliminär: svaret är inte slutgiltigt och ett annat följer.
| Kod | Orsaksfras | Vad det betyder |
|---|---|---|
| 100 | Continue | Huvuden mottagna, fortsätt skicka kroppen. |
| 101 | Switching Protocols | Växlande protokoll — WebSocket-handslaget. |
| 103 | Early Hints | Tidiga tips: förladdning av dessa resurser medan det riktiga svaret förbereds. |
2xx — Framgång
5Begäran mottogs, förstods och accepterades.
| Kod | Orsaksfras | Vad det betyder |
|---|---|---|
| 200 | OK | Framgång, med en kropp. |
| 201 | Created | Skapad.Bör bära ett Location-huvud som pekar på den nya resursen. |
| 202 | Accepted | Accepterad för bearbetning, vilket inte har hänt ännu. |
| 204 | No Content | Framgång, och medvetet ingen kropp.Det rätta svaret på en DELETE, eller på en sparning som inte har något att returnera. |
| 206 | Partial Content | Partiellt innehål — svaret på en Range-begäran. Resumable downloads. |
3xx — Omdirigering
6Resursen är någon annanstans, eller din cachat kopia är fortfarande bra.
| Kod | Orsaksfras | Vad det betyder |
|---|---|---|
| 301 | Moved Permanently | Flyttad permanent. Uppdatera dina länkar; cacheminnen kan förvara detta för alltid. |
| 302 | Found | Funnet — en tillfällig omdirigering.Allmänt implementerat som växling av metoden till GET, som 307 åtgärdar. |
| 303 | See Other | Se övrigt: hämta resultatet med GET. Omdirigeringen efter en formulär POST. |
| 304 | Not Modified | Inte ändrad — din cachade kopia är aktuell. Skickas utan kropp. |
| 307 | Temporary Redirect | Tillfällig omdirigering, metod och kropp bevarad. |
| 308 | Permanent Redirect | Permanent omdirigering, metod och kropp bevarad. |
4xx — Klientfel
14Begäran är problemet. Om du upprepar det oförändrat kommer det att misslyckas igen.
| Kod | Orsaksfras | Vad det betyder |
|---|---|---|
| 400 | Bad Request | Servern kunde inte tolka begäran alls. |
| 401 | Unauthorized | Inte autentiserad — servern vet inte vem du är.Namngiven Unauthorized, men det betyder oautentiserad. Bör innehålla WWW-Authenticate. |
| 403 | Forbidden | Autentiserad och fortfarande inte tillåten. Bättre uppgifter hjälper inte. |
| 404 | Not Found | Ingen sådan resurs, och servern säger inte om det någonsin fanns en. |
| 405 | Method Not Allowed | Fel metod för denna URL.Måste lista de som fungerar i ett Allow-huvud. |
| 406 | Not Acceptable | Ingenting tillgängligt i ett format ditt Accept-huvud tar. |
| 409 | Conflict | Strider mot det nuvarande tillståndet — en redigering mot en stale version. |
| 410 | Gone | Borta: den existerade och togs bort medvetet. Starkare än 404. |
| 413 | Content Too Large | Kroppen är större än servern accepterar. |
| 415 | Unsupported Media Type | Servern hanterar inte denna Content-Type. |
| 418 | I'm a teapot | Jag är en tekanna. Ett 1998 April Fools-skämt, permanent reserverat. |
| 422 | Unprocessable Content | Tolkat korrekt, innehål ogiltigt — ett saknat fält, ett dåligt värde. |
| 429 | Too Many Requests | Ratebegränsad.Sök efter Retry-After innan du försöker igen, och backa av exponentiellt. |
| 451 | Unavailable For Legal Reasons | Blockerad av juridiska skäl. Numret är en anspelning på Fahrenheit 451. |
5xx — Serverfel
6Begäran kan vara bra. Dessa är värda att försöka igen.
| Kod | Orsaksfras | Vad det betyder |
|---|---|---|
| 500 | Internal Server Error | Ett ohanterat fel på servern. Ingenting att åtgärda på din sida. |
| 501 | Not Implemented | Servern implementerar inte denna metod alls. |
| 502 | Bad Gateway | En proxy nådde uppströmservern och fick något oanvändbar tillbaka. |
| 503 | Service Unavailable | Medvetet inte serving — överbelastad eller i underhåll.Statusen som bör bära Retry-After. |
| 504 | Gateway Timeout | En proxy gav upp på att vänta på uppströmservern. |
| 505 | HTTP Version Not Supported | HTTP-versionen i begäran stöds inte. |