Skip to content

Stavové kódy HTTP vysvětleny

Každý běžný stavový kód odpovědi HTTP, seskupený podle třídy: co znamená a kdy se s ním setkáte. Rychlá referenční příloha k nástroji Stavové kódy HTTP.

Stavové kódy HTTP sdílejí jeden vzor: první číslice určuje třídu a zbytek je detail. 1xx znamená informaci, 2xx úspěch, 3xx přesměrování, 4xx chybu klienta a 5xx chybu serveru. Čtěte nejdřív první číslici. Doprovodný nástroj umožňuje dohledat jeden kód do hloubky.

Referenční tabulka · 55 položekOtevřít nástroj http-status-codes →
55 of 55 rows
1xx Informativní
ContinueServer přijal hlavičky požadavku a klient může odeslat tělo.Po předběžné kontrole před nahráním velkého těla.
Switching ProtocolsServer souhlasí s přepnutím na protokol, který klient požadoval.Povýšení spojení HTTP na WebSocket.
ProcessingServer požadavek přijal a stále na něm pracuje.WebDAV server potvrzuje dlouhý požadavek, aby klientovi nevypršel čas.
Early HintsServer posílá předběžné hlavičky dřív, než je hotová konečná odpověď.Umožnit prohlížeči přednačíst assety, zatímco se stránka ještě vykresluje.
2xx Úspěch
OKPožadavek uspěl a tělo odpovědi nese výsledek.Standardní úspěch pro GET nebo PUT.
CreatedPožadavek uspěl a vznikl nový zdroj.Odpověď po úspěšném POST, který něco vytváří.
AcceptedPožadavek byl přijat ke zpracování, ale ještě není hotový.Dlouho běžící úloha začala a běží asynchronně.
Non-Authoritative InformationPožadavek uspěl, ale vrácená data byla na cestě zpět transformována.Proxy nebo mezipaměť podává změněná metadata místo původních.
No ContentPožadavek uspěl a neexistuje tělo, které by šlo vrátit.Úspěšné DELETE, nebo PUT bez obsahu k vrácení.
Reset ContentPožadavek uspěl a klient by měl resetovat pohled, který ho odeslal.Po odeslání formuláře, aby stránka vyčistila svá pole.
Partial ContentServer vrací jen požadovanou část zdroje.Podání bajtového rozsahu z požadavku Range.
3xx Přesměrování
Moved PermanentlyZdroj má trvale novou URL a budoucí požadavky by ji měly používat.Stránka se přesunula a vyhledávače musí aktualizovat svůj index.
FoundZdroj je dočasně na jiné URL, ale nadále používejte původní.Přesměrování na přihlašovací stránku na okamžik.
See OtherOdpověď leží na jiné URL a musí se vyzvednout pomocí GET.Vzor PRG: přesměrovat POST na stránku výsledku, aby obnovení znovu neodesílalo.
Not ModifiedKopie v mezipaměti je stále platná, server proto neposílá tělo.Podmíněný GET, kde je mezipaměť klienta aktuální.
Use ProxyPožadavek se musí odeslat přes proxy uvedenou v odpovědi.Starší proxy sítě; zastaralé od roku 2011.
Temporary RedirectZdroj je dočasně jinde a původní metoda požadavku se musí zachovat.Jako 302, ale POST zůstane POST i po přesměrování.
Permanent RedirectZdroj má trvale novou URL a původní metoda požadavku se musí zachovat.Jako 301, ale POST zůstane POST i po přesměrování.
4xx Chyba klienta
Bad RequestServer požadavku kvůli chybné syntaxi neporozuměl.Poškozené JSON, nebo chybějící povinné pole.
UnauthorizedVyžaduje se ověření a buď chybělo, nebo neuspělo.Žádný token, nebo neplatný či propadlý token.
Payment RequiredPožadavek vyžaduje platbu, byť specifikace nikdy nedefinovala jak.Některá API ho používají jako značku placené zdi; většina ho nepoužívá nikdy.
ForbiddenKlient je ověřen, ale k tomuto zdroji nemá přístup povolen.Platné přihlášení, ale chybí oprávnění k tomuto zdroji.
Not FoundServer na této URL žádný zdroj nemá.Neznámá URL, nebo identifikátor, který neexistuje.
Method Not AllowedURL existuje, ale použitou metodu požadavku nepovoluje.POST na endpoint, který přijímá jen GET.
Not AcceptableServer nemůže vrátit obsah odpovídající hlavičkám Accept klienta.Klient chtěl jen XML, ale API vrací pouze JSON.
Proxy Authentication RequiredKlient se musí prokázat u proxy, než požadavek pokračuje dál.Firemní proxy odmítá neověřený požadavek.
Request TimeoutKlient s odesíláním trval příliš dlouho a server to vzdal.Nahrávání, které se zaseklo dřív, než dorazilo celé tělo.
ConflictPožadavek koliduje s aktuálním stavem zdroje.Duplicitní e-mail, nebo současná úprava téhož záznamu.
GoneZdroj kdysi existoval, ale byl trvale odstraněn.Záměrně vyřazený endpoint, silnější než 404.
Length RequiredPožadavek potřebuje hlavičku Content-Length a nemá ji.Server, který musí znát velikost předem, odmítá streamované tělo.
Precondition FailedPodmínka v hlavičce, například If-Match, se vyhodnotila jako nepravda.Optimistická úprava, kde se záznam od přečtení klientem změnil.
Content Too LargeTělo požadavku překračuje limit, který server přijímá.Nahrání větší, než je maximální velikost těla na serveru.
URI Too LongURL požadavku je delší, než je server ochopen interpretovat.Formulář omylem serializovaný do GET query stringu, který rostl bez mezí.
Unsupported Media TypeFormát těla požadavku nepatří mezi formáty, které endpoint přijímá.POST s Content-Type text/plain na endpoint přijímající jen JSON.
Range Not SatisfiableBajtový rozsah v hlavičce Range do zdroje nezapadá.Požadavek bajtů za koncem souboru při obnovování stahování.
Expectation FailedServer nemůže splnit očekávání uvedené v hlavičce Expect.Očekávání 100-continue, které server odmítá splnit.
I'm a teapotServer je konvice na čaj a odmítá vařit kávu.Aprílový vtip z roku 1998, který neumírá; API ho vrací pro zábavu.
Misdirected RequestPožadavek přišel na server, který pro něj nemůže vytvořit odpověď.Znovupoužité spojení na hostitele, kterému tento server neslouží.
Unprocessable EntityPožadavek je dobře formátovaný, ale jeho hodnoty neprocházejí sémantickou validací.Platné JSON, jehož pole porušují obchodní pravidla.
Too EarlyServer odmítá požadavek, u kterého hrozí, že jde o opakování.Odmítnutí opakovaného neidempotentního požadavku před rotací klíčů.
Upgrade RequiredKlient musí k tomuto zdroji přejít na jiný protokol.Endpoint, který trvá na TLS nebo WebSocketu.
Precondition RequiredServer vyžaduje podmíněné hlavičky, které požadavek neposlal.API vyžadující If-Match, aby zabránilo ztraceným aktualizacím.
Too Many RequestsKlient poslal v daném časovém okně příliš mnoho požadavků.Byl dosažen rate limit; polevte a zkuste to znovu.
Request Header Fields Too LargeJedno nebo více polí hlavičky jsou pro server příliš velká na zpracování.Cookie nebo token, který narostl, až blokoval každý požadavek na web.
Unavailable For Legal ReasonsZdroj je blokován z právních důvodů, například stažení obsahu nebo geografické omezení.Vládní příkaz ke stažení, nebo stránka blokovaná v jedné zemi.
5xx Chyba serveru
Internal Server ErrorServer narazil na neočekávanou situaci a selhal.Neošetřená výjimka nebo chyba na serveru.
Not ImplementedServer nepodporuje požadovanou metodu ani funkci.Endpoint je deklarovaný, ale ještě postavený nebyl.
Bad GatewayBrána nebo proxy dostala od nadřazeného serveru neplatnou odpověď.Reverzní proxy se nedostala na backend.
Service UnavailableServer nemůže požadavek dočasně obsloužit.Údržba, přetížení, nebo výpadek závislé služby.
Gateway TimeoutBrána nebo proxy nezískala včas odpověď od nadřazeného serveru.Backend trval příliš dlouho a proxy to vzdala.
HTTP Version Not SupportedServer nepodporuje verzi HTTP uvedenou v požadavku.Klient mluví verzí protokolu, kterou server nikdy neuměl.
Variant Also NegotiatesTransparentní vyjednávání obsahu skončilo cyklickým odkazem.Špatně nastavený server s experimentálním vyjednáváním obsahu.
Insufficient StorageServer nemůže uložit reprezentaci potřebnou k dokončení požadavku.WebDAV server s plným přiděleným úložištěm.
Loop DetectedServer při zpracování požadavku narazil na nekonečnou smyčku.Vazba WebDAV, která odkazuje sama na sebe.
Network Authentication RequiredKlient se musí prokázat síti, aby získal přístup.Captive portál v hotelu nebo na letišti, který požadavek zachytí.