techunbox logo v2

Kody odpowiedzi HTTP

Gdy podczas używania aplikacji lub programu komputerowego otrzymujemy numeryczną daną wysłaną przez serwer HTTP, to mamy do czynienia z tzw. kodem odpowiedzi. Zadaniem tego kodu jest przekazanie odpowiedzi zwrotnej na wysłane zapytanie i wskazanie dalszego postępowania. Kod odpowiedzi HTTP jest umieszczony za wersją protokołu, a przed treścią komunikatu kodu. Jakiego rodzaju typy kodów odpowiedzi możemy wyróżnić? Poniżej umieściliśmy pełną listę kodów HTTP wraz z ich podziałem na klasy.

Kody błędu serwera HTTP:

  • 500 – Internal Server Error: wewnętrzny błąd serwera;
  • 501 – Not Implemented: serwer otrzymał nieznany kod zapytania;
  • 502 – Bad Gateway: błąd bramy, serwer pośredniczący otrzymał od nadrzędnego błędną odpowiedź i nie jest w stanie zrealizować żądania;
  • 503 – Service Unavailable: przeciążenie serwera, usługa jest niedostępna;
  • 504 – Gateway Timeout: przekroczony czas bramy, serwer nie otrzymał odpowiedzi w ustalonym czasie;
  • 505 – HTTP Version Not Supported: ta wersja protokołu HTTP jest nieobsługiwana;
  • 506 – Variant Also Negotiates: wariant jest w trakcie negocjowania;
  • 507 – Insufficient Storage (WebDAV): brak możliwości zapisania przez serwer danych związanych z wykonaniem tego zapytania;
  • 508 – Loop Detected (WebDAV): wykrycie przez serwer nieskończonej pętli podczas przetwarzania zapytania;
  • 509 – Bandwidth Limit Exceeded: przekroczony został limit transferu danych, serwer tymczasowo niedostępny;
  • 510 – Not Extended: zapytanie nie może być zrealizowane przez serwer, brak wymaganego rozszerzenia HTTP;
  • 511 – Network Authentication Required: dostęp do sieci wymaga uwierzytelnienia.

Kody błędu aplikacji klienta:

  • 400 – Bad Request: nieprawidłowe zapytanie, np. błąd w składni;
  • 401 – Unauthorized: wymagana jest autoryzacja (uwierzytelnienie);
  • 402 – Payment Required: serwer wymaga opłaty;
  • 403 – Forbidden: serwer przyjął zapytanie, ale nie może go zrealizować ze względu na konfigurację bezpieczeństwa;
  • 404 – Not Found: serwer nie znalazł zasobu o wskazanym adresie;
  • 405 – Method Not Allowed: metoda uzyskania odpowiedzi na zapytanie nie jest dozwolona;
  • 406 – Not Acceptable: brak odpowiedzi lub posiadany zasób nie spełnia jej wymagań;
  • 407 – Proxy Authentication Required: serwer pośredniczący (proxy) wymaga uwierzytelnienia;
  • 408 – Request Timeout: czas oczekiwania na żądanie dobiegł końca;
  • 409 – Conflict: żądanie nie może być spełnione ze względu na konflikt z obecnym statusem zasobu;
  • 410 – Gone: żądany zasób nie jest dostępny lub został całkowicie usunięty;
  • 411 – Length required: do uzyskania odpowiedzi konieczne jest dodanie w zapytaniu nagłówka Content-Length;
  • 412 – Precondition Failed: co najmniej jeden z warunków zapytania blokuje możliwość uzyskania odpowiedzi ze strony serwera;
  • 413 – Request Entity Too Large: zapytanie jest zbyt długie;
  • 414 – Request – URI Too Long: adres URI jest za długi;
  • 415 – Unsupported Media Type: składnia zapytania jest niezrozumiała dla serwera;
  • 416 – Requested Range Not Satisfiable: zakres bajtowy zapytania przekracza możliwości serwera;
  • 417 – Expectation Failed: oczekiwana wartość nie może być zwrócona;
  • 418 – I’m a teapot: oznacza to dosłownie „jestem czajnikiem”, rodzaj przerwy w dostawie danego zasobu, obecnie nie implementowany;
  • 421 – Misdirected Request: serwer otrzymał zapytanie, które nie powinno do niego trafić;
  • 422 – Unprocessable entity: serwer znalazł błąd semantyczny w zapytaniu i nie może udzielić na nie właściwej odpowiedzi;
  • 423 – Locked (WebDAV): zasób jest aktualnie zablokowany;
  • 424 – Failed Dependency (WebDAV): żądanie nie powiodło się, ponieważ żądanie, od którego jest zależne, również się nie powiodło;
  • 425 – Too Early: serwer nie przetworzy żądania z powodu ryzyka ataku typu Replay;
  • 426 – Upgrade Required: zapytanie posługuje się nieaktualnym protokołem;
  • 428 – Precondition Required: brak wstępnego nagłówka;
  • 429 – Too Many Requests: serwer otrzymał w danym czasie zbyt dużą liczbę żądań;
  • 431 – Request Header Fields Too Large: pole nagłówka jest zbyt duże;
  • 451 – Unavailable For Legal Reasons: zawartość nie może być udostępniona ze względów prawnych, w tym ocenzurowania przez władze.

Kody przekierowania:

  • 300 – Multiple Choices: wiele możliwości obsłużenia zapytania;
  • 301 – Moved Permanently: żądana zawartość została przeniesiona pod nowy adres;
  • 302 – Found: żądana zawartość jest tymczasowo dostępna pod innym adresem, w przyszłości należy kierować zapytania pod pierwotny adres;
  • 303 – See Other: żądana zawartość znajduje się pod innym adresem, przekierowanie dla żądań przeprowadzonych metodą POST;
  • 304 – Not Modified: przekazane warunki nie wpłynęły na zmianę zawartości zasobu;
  • 305 – Use Proxy: należy użyć serwera proxy podanego w nagłówku Location;
  • 306 – Switch Proxy: kod nie jest używany, ale jest zastrzeżony dla starszych wersji protokołu;
  • 307 – Temporary Redirect: żądana zawartość jest tymczasowo dostępna pod innym adresem, podany jest adres zasobu, na który należy się przenieść;
  • 310 – Too many redirects: zbyt duża liczba przekierowań.

Kody powodzenia:

  • 200 – OK: serwer zwraca zawartość żądanego dokumentu;
  • 201 – Created: na serwerze został zapisany wysłany dokument;
  • 202 – Accepted: zapytanie zostało przyjęte, lecz jest w trakcie realizacji;
  • 203 – Non-Authoritative Information: zwrócona odpowiedź nie odpowiada pierwotnej, została utworzona na podstawie lokalnych lub zewnętrznych kopii;
  • 204 – No content: zapytanie zostało zrealizowane, nie ma potrzeby zwracania żadnej treści;
  • 205 – Reset Content: zapytanie zostało zrealizowane, należy przywróć pierwotną zawartość dokumentu;
  • 206 – Partial Content: jedynie część zapytania GET została zwrócona przez serwer, brak nagłówka Content-Range.

Kody informacyjne:

  • 100 – Continue: kontynuuj wysyłanie zapytania;
  • 101 – Switching Protocols: zmiana protokołu;
  • 110 – Connection Timed Out: czas połączenia został przekroczony, zbyt długa odpowiedź serwera;
  • 111 – Connection refused: połączenie zostało odrzucone przez serwer.
ostatnie artykuły

Inaczej nazwane także:

  • Kody błędów HTTP
  • Błędy HTTP
  • Kody serwera
  • Kody HTTP
  • HTTP status code