Sök…


parametrar

Statuskod Anledning-fras - beskrivning
100 Fortsätt - klienten ska skicka följande del av en flerdelsförfrågan.
101 Växla protokoll - servern ändrar version eller typ av protokoll som används i denna kommunikation.
200 OK - servern har tagit emot och slutfört klientens begäran.
201 Skapad - servern har accepterat begäran och skapade en ny resurs, som är tillgänglig under URI i Location huvudet.
202 Godkänt - servern har tagit emot och accepterat klientens begäran, men den har ännu inte startat eller slutfört behandlingen.
203 Icke-auktoritativ information - servern returnerar data som kan vara en under- eller superset av informationen som finns tillgänglig på den ursprungliga servern. Används främst av ombud.
204 Inget innehåll - används i stället för 200 (OK) när det inte finns någon instans för svaret.
205 Återställ innehåll - identiskt med 204 (Inget innehåll), men klienten bör ladda om den aktiva dokumentvyn.
206 Delvis innehåll - används i stället för 200 (OK) när klienten begärde en Range rubrik.
300 Flera val - den begärda resursen är tillgänglig på flera URI: er och klienten bör omdirigera begäran till en URI som anges i listan i meddelandekroppen.
301 Flyttad permanent - den begärda resursen är inte längre tillgänglig på denna URI, och kunden ska dirigera detta och alla framtida ansökningar till URI anges i Location huvudet.
302 Hittade - resursen är tillfälligt bosatt under en annan URI. Denna begäran ska omdirigeras på användarens bekräftelse till URI i Location huvudet, men framtida ansökningar bör inte ändras.
303 Se Annat - mycket lik 302 (hittades), men kräver inte användarinmatning för att omdirigera till den medföljande URI. Den angivna URI ska hämtas med en GET-begäran.
304 Not Modified - klienten skickade en If-Modified-Since eller liknande rubrik, och resursen har inte ändrats sedan den punkten; klienten ska visa en cache-kopia av resursen.
305 Använd proxy - den begärda resursen måste begäras igen genom ombud som anges i Location rubrikfältet.
307 Tillfällig omdirigering - identisk med 302 (hittades), men HTTP 1.0-klienter stöder inte 307 svar.
400 Dålig begäran - klienten skickade en felaktig begäran som innehåller syntaxfel och borde ändra begäran för att korrigera den innan han upprepar den.
401 Obehörig - den begärda resursen är inte tillgänglig utan verifiering. Klienten kan upprepa begäran med hjälp av en Authorization att tillhandahålla autentiseringsinformation.
402 Betalning krävs - reserverad, ospecificerad statuskod för användning av applikationer som kräver användarabonnemang för att se innehåll.
403 Förbjuden - servern förstår begäran, men vägrar att uppfylla den på grund av befintliga åtkomstkontroller. Begäran ska inte upprepas.
404 Not Found - det finns ingen resurs tillgänglig på den här servern som matchar den begärda URI. Kan användas i stället för 403 för att undvika att avslöja information om åtkomstkontroll.
405 Metod ej tillåten - resursen stöder inte begärningsmetoden (HTTP-verb); i Allow rubriken listas acceptabla förfrågningsmetoder.
406 Ej acceptabelt - resursen har egenskaper som bryter mot de accepterande rubriker som skickas i begäran.
407 Proxy-autentisering krävs - liknande 401 (otillåten), men indikerar att klienten först måste autentisera med mellanproxy.
408 Begär timeout - servern förväntade sig en ny begäran från klienten, men ingen tillhandahölls inom en acceptabel tidsram.
409 Konflikt - begäran kunde inte slutföras eftersom den strider mot resursens nuvarande tillstånd.
410 Borta - liknande 404 (Inte hittat), men indikerar ett permanent borttagning. Ingen vidarebefordringsadress är tillgänglig.
411 Längd krävs - klienten har inte angett en giltig Content-Length och måste göra det innan servern accepterar denna begäran.
412 Förutsättning misslyckades - resursen är inte tillgänglig med alla villkor som anges av de villkorade rubriker som skickas av klienten.
413 Begär entitet för stor - servern kan för närvarande inte behandla ett meddelandeorgan med den längd som klienten skickade.
414 Request-URI för länge - servern vägrar begäran eftersom Request-URI är längre än servern är villig att tolka.
415 Ostödd medietyp - servern stöder inte den MIME eller mediatyp som anges av klienten och kan inte betjäna denna begäran.
416 Begärt intervall är inte tillfredsställande - klienten begärde ett intervall av byte, men servern kan inte tillhandahålla innehåll till den specifikationen.
417 Förväntning misslyckades - klienten specificerade begränsningar i Expect huvudet som servern inte kan uppfylla.
500 Internt serverfel - servern mötte ett oväntat tillstånd eller ett fel som hindrar den från att slutföra denna begäran.
501 Ej implementerad - servern stöder inte funktionen som krävs för att slutföra begäran. Vanligtvis används för att ange en förfrågningsmetod som inte stöds på någon resurs.
502 Dålig gateway - servern är en proxy och fick ett ogiltigt svar från uppströmsservern vid bearbetning av denna begäran.
503 Tjänsten otillgänglig - servern är under hög belastning eller undergår underhåll och har för närvarande inte kapacitet att betjäna denna begäran.
504 Gateway Timeout - servern är en proxy och fick inte ett svar från uppströmsservern i tid.
505 HTTP-version stöds inte - servern stöder inte versionen av HTTP-protokollet som klienten begärde med.

Grundläggande svarformat

När en HTTP-server tar emot en välformad HTTP-begäran måste den behandla informationen som begäran innehåller och returnera ett svar till klienten. Ett enkelt HTTP 1.1-svar kan se ut som något av följande, vanligtvis följt av ett antal rubrikfält, och eventuellt ett svarskropp:

HTTP/1.1 200 OK \r\n
HTTP/1.1 404 Not Found \r\n
HTTP/1.1 503 Service Unavailable \r\n

Ett enkelt HTTP 1.1-svar har detta format:

HTTP-Version Status-Code Reason-Phrase CRLF

Som i en begäran indikerar HTTP-Version versionen av HTTP-protokollet som används; för HTTP 1.1 måste detta alltid vara strängen HTTP/1.1 .

Status-Code är en tresiffrig kod som anger status för klientens begäran. Den första siffran i denna kod är statusklassen , som placerar statuskoden i en av fem svarskategorier [1] :

  • 1xx Informational - servern har fått begäran och behandlingen fortsätter
  • 2xx Framgång - servern har accepterat och behandlat begäran
  • 3xx omdirigering - ytterligare åtgärder krävs av klientens sida för att slutföra begäran
  • 4xx Klient Fel - kunden skickat en begäran som missbildade eller inte kan uppfyllas
  • 5xx Server Fel - begäran var giltigt, men servern inte kan uppfylla det för närvarande

Reason-Phrase är en kort beskrivning av statuskoden. Till exempel har kod 200 en orsakssats för OK ; kod 404 har en fras av Not Found . En fullständig lista över orsakssfraser finns i parametrar nedan eller i HTTP-specifikationen .

Linjen avslutas med ett vagnretur - radmatningspar, vanligtvis representerat av \r\n .

Ytterligare rubriker

Liksom en HTTP-begäran kan ett HTTP-svar innehålla ytterligare rubriker för att ändra eller förstärka svaret som det ger.

En fullständig lista över tillgängliga rubriker definieras i §6.2 i specifikationen . De vanligaste rubrikerna är:

  • Server , som fungerar som en User-Agent begäran header för servern;
  • Location , som används på status- och 201-svar på 201 och 3xx för att indikera en URI att omdirigera till; och
  • ETag , som är en unik identifierare för denna version av den returnerade resursen för att göra det möjligt för kunder att cache svaret.

Svarsrubriker kommer efter statusraden, och som på begäran formas rubriker som sådana:

Name: Value CRLF

Name ger rubriknamnet, t.ex. ETag eller Location , och Value ger det värde som servern ställer in för det huvudet. Linjen slutar med en CRLF.

Ett svar med rubriker kan se ut så här:

HTTP/1.1 201 Created \r\n
Server: WEBrick/1.3.1 \r\n
Location: http://example.com/files/129742 \r\n

Meddelandeorgan

Liksom med förfrågningsorgan kan HTTP-svar innehålla ett meddelandeorgan. Detta ger ytterligare data som klienten kommer att behandla. Särskilt bör 200 OK-svar på en välformerad GET-begäran alltid tillhandahålla ett meddelandeorgan som innehåller den begärda informationen. (Om det inte finns 204 är inget innehåll ett lämpligare svar).

Ett meddelandeorgan ingår efter alla rubriker och en dubbel CRLF. När det gäller förfrågningar, bör dess längd i byte anges med Content-Length . Ett framgångsrikt svar på en GET-begäran kan därför se ut så här:

HTTP/1.1 200 OK\r\n
Server: WEBrick/1.3.1\r\n
Content-Length: 39\r\n
ETag: 4f7e2ed02b836f60716a7a3227e2b5bda7ee12c53be282a5459d7851c2b4fdfd\r\n
\r\n
Nobody expects the Spanish Inquisition.


Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow