Nyheter i Android, Telefoner, Prylar Och Recensioner

Vad betyder dessa HTTP-statuskoder?

HTTP-statuskoder är en viktig del av webbsurfandet. Varje förfrågan du gör, varje gång du klickar på en länk eller anger en URL, får du ett svar. Bakom det svaret finns en numerisk kod som sammanfattar resultatet.

Du har hört talas om 404-koden och förmodligen förbannat din webbläsare varje gång den visar en. Men HTTP är kraftfullare än du kanske inser, och statuskoder hanterar många olika scenarier. Läs vidare för att ta reda på mer om dessa kryptiska små siffror.

Hur webbklienter och servrar kommunicerar

Webbsurfning möjliggörs av kommunikation mellan klienter och servrar. När du ber om att få se en sida skickar din klient (webbläsare) en begäran till en server (webbplats). Den begäran är förhoppningsvis framgångsrik, då skickar servern ett svar som du kan läsa.

I sitt svar inkluderar webbservern mer än bara innehållet. Till att börja med innehåller den en serie rubriker, små bitar av metadata som gäller för svaret. Till exempel Innehållstyp header kan se ut så här:

Content-Type: text/html; charset=UTF-8

Detta betyder “svaret är HTML” i motsats till en bild eller en musikfil.

Men före innehållet, även före rubrikerna, innehåller varje HTTP-svar en rad som ser ut ungefär så här:

HTTP/1.1 200 OK

I det här exemplet, tillsammans med HTTP-versionen (1.1), lyder en statuskod “200 OK”. Med andra ord, “allt är bra, här är ditt innehåll.” 200 är den viktigaste biten. System kan testa mot det för att fastställa exakt vad som har hänt. “OK” är ett trevligt kort tips som beskriver statusen för alla människor som tittar på.

Exempel på vanliga statuskoder

Statuskoderna 404 och 200 är mycket vanliga, men det finns många fler möjligheter.

500 (INTERNT SERVERFEL) är en felstatus. Det betyder att något gick fel på servern och att den inte kan uppfylla begäran. Detta kan vara ett programmeringsfel eller något annat körtidsfel. 403 (FÖRBJUDET) betyder att servern förstod begäran men vägrar att tillåta den. Detta gäller ofta användarrelaterade åtgärder i mer komplicerade webbappar. Till exempel att försöka redigera ett inlägg som någon annan äger. 401 (OBEHÖRIG) är mycket lik 403. I det här fallet får den ursprungliga begäran inte komma åt resursen eftersom den inte gav några användaruppgifter. Du är med andra ord inte inloggad. 400 DÅLIG FÖRFRÅGAN) betyder att servern inte kunde förstå vad som efterfrågades. Det kanske saknas information, till exempel en URL-parameter. Kanske något skadade förfrågan under transporten.

Relaterad  Apple förbereder lanseringen av Fitness + i Ryssland. Vad du behöver veta om videoutbildningstjänsten

HTTP-statuskodgrupper

Alla statuskoder vi har sett hittills är tresiffriga, alla mellan 200 och 500. Detta är ingen slump. HTTP-statusar är alla tre siffror långa, med den första siffran mellan en och fem. Och värdet på den första siffran placerar koden i en av fem grupper, var och en med en specifik betydelse.

Den första gruppen, 1xx, är “information”. Dessa fall betyder alla att servern förstod begäran, men inte är redo att skicka ett svar. Du kommer inte att se dessa i aktion mycket, men de är till för system som behöver dem.

2xx-gruppen är hemmet för det svar du vanligtvis vill ha: 200 (OK). Det är det vanligaste framgångsfallet, men det finns andra.

De 204 (INGET INNEHÅLL) koden är ganska konstig. En server kan returnera det som ett resultat av en PUT eller en POST eller en PATCH. Meningen, i dessa fall, skulle vara att servern gjorde uppdateringen, men det finns inget behov av att returnera något till klienten.

Koder i 3xx-gruppen visar hur HTTP-statusar går utöver att bara kommunicera framgång eller misslyckande. Statuskoder som börjar med 3 indikerar en omdirigering. Det betyder att den ursprungliga begäran inte var dålig, men klienten bör använda en annan URL istället.

Detta kan vara tillfälligt, som i fallet med 302 (FOUND), som en webbplats kan använda för att vara värd för en reklam-URL som omdirigerar till en slutproduktsida. En webbplats kan använda en permanent omdirigering istället, via 301 FLYTTADE PERMANENT) status. Detta är god praxis när till exempel en webbplats har bytt namn på en sida.

Omdirigeringsstatusar åtföljs vanligtvis av en Plats rubrik. Detta talar om för klienten vilken URL som ska begäras istället för den ursprungliga. Servrar kommer ofta att svara med ytterligare rubriker. Dessa kommer att ge mer användbar information än bara statuskoden.

Status som börjar med 4 är klientfel. I huvudsak betyder de att “webbläsaren (eller personen som använder den) gjorde något fel”. Vi har redan diskuterat flera av dessa (400, 401, 403, 404), och detta är den största gruppen av statuskoder av en betydande mängd. Andra exempel på klientfel inkluderar att begära en URL som brukade existera men som inte längre gör det: 410 (BORTA). Det finns också 429 (FÖR MÅNGA FÖRFRÅGAN), som stöder hastighetsbegränsning så att resurserna inte blir överväldigade. Detta används mycket ofta av REST API:er.

Relaterad  12 fantastiska verktyg för att förbättra din innehållsmarknadsföring

Slutligen, statusar i intervallet 500-599 indikerar att något gick fel med servern medan den försökte uppfylla begäran.

Få HTTP-status med curl

Det vanligaste HTTP-kommandoradsverktyget för alla ändamål är ringla. Med hjälp av curl kan du skicka HTTP-förfrågningar för hand, se underliggande svarsdetaljer och undersöka statuskoder.

Curl-programmet gör det inte otroligt lätt att bara visa en statuskod, men du kan göra det med några alternativ, nämligen:

-o säger till curl att skicka sin standardutgång till en fil. Du kan använda den för att kassera all normal utmatning. -w visar anpassad information från en uppsättning tillgängliga variabler, varav en är “http_code”, dvs. svarsstatuskoden.

Du kan också använda -s för att dölja vissa detaljer visar curl vanligtvis om överföringen, såsom framsteg i realtid. Så här sätter du ihop dessa alternativ:

$ curl -sw "%{http_code}" -o /dev/null http://example.org
200
$ curl -sw "%{http_code}" -o /dev/null http://bbc.co.uk
301

Eller så kan du använda lite olika alternativ och en pipeline för att manipulera resultatet:

$ curl -sI http://example.org/no | head -1 | cut -f2 -d' '
404

Visa statuskoder i en webbläsare

Om du någonsin behöver kontrollera HTTP-statuskoder kan din webbläsare hjälpa till. De flesta moderna webbläsare har en konsol som kan visa avancerad information. Med Chrome som exempel kontrollerar du en URLs statuskod så här:

    Välja Se -> Utvecklaren -> Utvecklarverktyg från huvudmenyn. Detta växlar ett litet fönster längst ned i din webbläsare. Om du inte redan tittar på Nätverk fliken i fönstret Utvecklarverktyg, ändra till den. Klicka på Dok för att endast visa förfrågningar om sidinnehåll. Uppdatera sidan du tittar på.

Observera att webbläsaren, bredvid begärda webbadresser, visar en Status kolumn. Den visar exakt vilken statuskod servern skickade tillbaka.

Relaterad  Vad är Bandcamp Friday och hur fungerar det?

Andra resurser

Det finns gott om bra resurser som förklarar mer om HTTP-statuskoder. Wikipedia-sidan med titeln Lista över HTTP-statuskoder och detta officiella datatracker-standarddokument är bra utgångspunkter.

Den mest användbara referensen kan vara httpstatuses.com. Den förklarar alla HTTP-statuskoder i ett kortfattat, lättförståeligt format. Det ger också användbara koddetaljer som kan komma till nytta när du programmerar allt som har med HTTP att göra.

Formatet för httpstatuses webbadresser är särskilt användbart. Sidan för 403-statuskoden är helt enkelt https://httpstatuses.com/403. Du kan enkelt ändra webbadressen för att slå upp vilken statuskod du behöver.

HTTP-statusar får webben att fungera

HTTP-statuskoden är ett enkelt tresiffrigt nummer som de flesta upplever i skepnad av 404. Men den är mycket kraftfullare än så, och statuskoder stöder ett brett spektrum av beteenden.

HTTP2 är nästa version av HTTP, men den goda nyheten är att statuskoderna förblir desamma. Allt du har lärt dig här kommer fortfarande att vara relevant under överskådlig framtid.

Om författaren

Bobby Jack (65 artiklar publicerade)

Bobby är en teknikentusiast som arbetat som mjukvaruutvecklare under de flesta av två decennier. Han brinner för spel, arbetar som chefredaktör på Switch Player Magazine och är fördjupad i alla aspekter av onlinepublicering och webbutveckling.

Mer från Bobby Jack

Prenumerera på vårt nyhetsbrev

Gå med i vårt nyhetsbrev för tekniska tips, recensioner, free e-böcker och exklusiva erbjudanden!

Klicka här för att prenumerera