Podstawowe kody odpowiedzi:
- 1xx (Informacyjne):
- 100 Continue (Kontynuuj): Oznacza, że serwer otrzymał część żądania, ale czeka na kolejną część, aby kontynuować.
- 101 Switching Protocols (Zmiana protokołów): Oznacza, że serwer akceptuje prośbę klienta o zmianę protokołu.
- 2xx (Sukces):
- 200 OK (OK): Oznacza, że żądanie zostało pomyślnie zrealizowane.
- 201 Created (Utworzono): Oznacza, że żądanie zostało pomyślnie wykonane i zasób został utworzony.
- 202 Accepted (Zaakceptowano): Oznacza, że żądanie zostało przyjęte do przetworzenia, ale jeszcze nie zostało ukończone.
- 204 No Content (Brak treści): Oznacza, że żądanie zostało pomyślnie zrealizowane, ale nie zwraca dodatkowej zawartości.
- 3xx (Przekierowanie):
- 300 Multiple Choices (Wiele możliwości): Oznacza, że zasób ma wiele reprezentacji, każda z innym adresem URL.
- 301 Moved Permanently (Przeniesiono na stałe): Oznacza, że zasób został przeniesiony na stałe na nowy adres URL.
- 302 Found (Znaleziono): Oznacza, że zasób został tymczasowo przeniesiony na inny adres URL.
- 304 Not Modified (Nie zmodyfikowano): Oznacza, że zasób nie został zmodyfikowany od ostatniego żądania.
- 307 Temporary Redirect (Tymczasowe przekierowanie): Oznacza, że zasób został tymczasowo przeniesiony na inny adres URL.
- 308 Permanent Redirect (Stałe przekierowanie): Oznacza, że zasób został przeniesiony na stałe na nowy adres URL.
- 4xx (Błąd klienta):
- 400 Bad Request (Złe żądanie): Oznacza, że serwer nie może zrozumieć żądania ze względu na błąd składniowy.
- 401 Unauthorized (Brak autoryzacji): Oznacza, że żądanie wymaga uwierzytelnienia.
- 403 Forbidden (Zakazane): Oznacza, że serwer odrzucił żądanie, ponieważ nie ma uprawnień do zasobu.
- 404 Not Found (Nie znaleziono): Oznacza, że serwer nie znalazł żądanego zasobu.
- 405 Method Not Allowed (Metoda niedozwolona): Oznacza, że metoda żądania nie jest obsługiwana przez zasób.
- 409 Conflict (Konflikt): Oznacza, że żądanie spowodowałoby konflikt z aktualnym stanem zasobu.
- 429 Too Many Requests (Za dużo żądań): Oznacza, że przekroczono limit żądań dla danego zasobu.
- 5xx (Błąd serwera):
- 500 Internal Server Error (Wewnętrzny błąd serwera): Oznacza, że serwer napotkał nieoczekiwany błąd podczas próby spełnienia żądania.
- 501 Not Implemented (Nie zaimplementowano): Oznacza, że serwer nie obsługuje funkcji wymaganej do obsługi żądania.
- 502 Bad Gateway (Zły brama): Oznacza, że serwer pośredniczący otrzymał nieprawidłową odpowiedź od serwera docelowego.
- 503 Service Unavailable (Usługa niedostępna): Oznacza, że serwer jest tymczasowo niedostępny ze względu na przeciążenie lub konserwację.
- 504 Gateway Timeout (Przekroczono limit czasu bramy): Oznacza, że serwer pośredniczący nie otrzymał odpowiedzi od serwera docelowego w określonym czasie.
- 505 HTTP Version Not Supported (Nieobsługiwana wersja HTTP): Oznacza, że serwer nie obsługuje używanej wersji protokołu HTTP.
Pozostałe kody odpowiedzi HTTP:
- 2xx (Sukces):
- 203 Non-Authoritative Information (Informacje nieautorytatywne): Oznacza, że odpowiedź zawiera informacje, które mogą pochodzić z innej źródłowej lokalizacji niż serwer.
- 205 Reset Content (Resetowanie zawartości): Oznacza, że klient powinien zresetować formularz, który przesłał, nie tracąc jednak dotychczasowych danych.
- 207 Multi-Status (Wiele statusów): Oznacza, że odpowiedź HTTP jest wieloczęściowa, zawiera zestaw różnych statusów odpowiedzi w odpowiedzi na różne części żądania.
- 208 Already Reported (Już zgłoszono): Oznacza, że raport został już wysłany i nie powinien być ponownie wysyłany.
- 226 IM Used (IM użyty): Oznacza, że serwer użył wewnętrznej metody zgodnej z protokołem HTTP/1.1 do powtórnego zwrócenia zawartości.
- 3xx (Przekierowanie):
- 300 Multiple Choices (Wiele możliwości): Oznacza, że zasób ma wiele reprezentacji, każda z innym adresem URL.
- 301 Moved Permanently (Przeniesiono na stałe): Oznacza, że zasób został przeniesiony na stałe na nowy adres URL.
- 302 Found (Znaleziono): Oznacza, że zasób został tymczasowo przeniesiony na inny adres URL.
- 303 See Other (Zobacz inne): Oznacza, że klient powinien przekierować się na inny adres URL.
- 305 Use Proxy (Użyj proxy): Oznacza, że żądanie powinno być przekierowane poprzez podany proxy.
- 306 Switch Proxy (Zmień proxy): Ta karta była używana w poprzednich wersjach specyfikacji, ale obecnie jest zarezerwowana do użycia w przyszłości.
- 308 Permanent Redirect (Stałe przekierowanie): Oznacza, że zasób został przeniesiony na stałe na nowy adres URL.
- 4xx (Błąd klienta):
- 402 Payment Required (Wymagana płatność): Oznacza, że płatność jest wymagana, aby uzyskać dostęp do zasobu.
- 406 Not Acceptable (Nieakceptowalne): Oznacza, że serwer nie może zwrócić danych w formacie akceptowanym przez klienta.
- 407 Proxy Authentication Required (Wymagana autoryzacja proxy): Oznacza, że autoryzacja jest wymagana dla dostępu przez serwer proxy.
- 408 Request Timeout (Przekroczono limit czasu żądania): Oznacza, że serwer zakończył żądanie, ponieważ przekroczono limit czasu oczekiwania.
- 410 Gone (Zaginione): Oznacza, że zasób został trwale usunięty i nie będzie dostępny w przyszłości.
- 411 Length Required (Wymagana długość): Oznacza, że serwer oczekuje nagłówka Content-Length w żądaniu.
- 412 Precondition Failed (Warunek wstępny nie został spełniony): Oznacza, że warunki wstępne określone w żądaniu nie zostały spełnione przez serwer.
- 413 Payload Too Large (Za duży ładunek): Oznacza, że serwer odrzucił żądanie ze względu na zbyt duży rozmiar ciała żądania.
- 414 URI Too Long (Adres URI jest za długi): Oznacza, że serwer odrzucił żądanie ze względu na zbyt długi adres URL.
- 415 Unsupported Media Type (Nieobsługiwany typ danych): Oznacza, że serwer odrzucił żądanie ze względu na nieobsługiwany format danych.
- 416 Range Not Satisfiable (Zakres niezaspokojony): Oznacza, że serwer nie może zaspokoić zakresu określonego przez nagłówek Range w żądaniu.
- 417 Expectation Failed (Oczekiwanie nie powiodło się): Oznacza, że serwer nie może spełnić jednego lub więcej oczekiwań określonych przez klienta w nagłówku Expect.
- 418 I'm a teapot (Jestem czajnikiem): To jest zmyślony kod odpowiedzi, który jest używany dla celów humorystycznych.
- 421 Misdirected Request (Źle skierowane żądanie): Oznacza, że serwer nie jest w stanie przetworzyć żądania z powodu nieprawidłowego skierowania.
- 422 Unprocessable Entity (Nieprzetworzona encja): Oznacza, że serwer zrozumiał składnię żądania, ale nie może go przetworzyć z powodu semantycznych błędów.
- 423 Locked (Zablokowane): Oznacza, że zasób jest zablokowany i nie może być dostępny.
- 424 Failed Dependency (Zależność nie powiodła się): Oznacza, że żądanie nie może zostać zrealizowane z powodu zależności z innego żądania, które nie powiodło się.
- 425 Too Early (Za wcześnie): Oznacza, że serwer jest nieprzygotowany do przetworzenia żądania, które zostało złożone zanim sesja zostanie nawiązana.
- 426 Upgrade Required (Wymagana aktualizacja): Oznacza, że klient musi użyć innej wersji protokołu, aby uzyskać dostęp do zasobu.
- 428 Precondition Required (Wymagany warunek wstępny): Oznacza, że serwer wymaga, aby żądanie było zabezpieczone warunkami wstępnymi.
- 431 Request Header Fields Too Large (Zbyt duże pola nagłówka żądania): Oznacza, że serwer odrzucił żądanie, ponieważ nagłówki przekroczyły limit wielkości.
- 451 Unavailable For Legal Reasons (Niedostępne z powodów prawnych): Oznacza, że zasób jest niedostępny ze względów prawnych.
- 5xx (Błąd serwera):
- 506 Variant Also Negotiates (Wariant negocjuje także): Oznacza, że serwer nie jest w stanie zrealizować żądania z powodu negocjacji wariantów wymaganych przez klienta.
- 507 Insufficient Storage (Niewystarczająca pamięć): Oznacza, że serwer nie może zrealizować żądania z powodu braku miejsca na przechowywanie.
- 508 Loop Detected (Wykryto pętlę): Oznacza, że serwer napotkał nieskończoną pętlę podczas przetwarzania żądania.
- 510 Not Extended (Nie rozszerzone): Oznacza, że żądanie nie zostało zrealizowane, ponieważ serwer wymaga rozszerzenia protokołu HTTP.
- 511 Network Authentication Required (Wymagana autoryzacja sieciowa): Oznacza, że dostęp do zasobu wymaga uwierzytelnienia dla dostępu do sieci.
Powyższe objaśnienia są ogólnymi opisami, a działanie i interpretacja kodów odpowiedzi mogą się różnić w zależności od konkretnego zastosowania i kontekstu aplikacji lub usługi internetowej.
Kody odpowiedzi HTTP zawierające cyfry w przedziale od 6xx do 9xx nie są standardowo zdefiniowane w protokole HTTP. Standard HTTP definiuje jedynie kody odpowiedzi w przedziale od 1xx do 5xx. Jednakże w praktyce, różne systemy lub rozszerzenia mogą używać niestandardowych kodów odpowiedzi dla swoich własnych celów.
Należy zauważyć, że kody odpowiedzi HTTP w przedziale od 6xx do 9xx są zazwyczaj zarezerwowane dla zastosowań specyficznych dla danego systemu lub protokołu, które nie są częścią standardowego protokołu HTTP. W związku z tym, ich znaczenie i zastosowanie mogą być zdefiniowane przez konkretną implementację lub specyfikację.
W ogólności, jeśli napotkasz kod odpowiedzi HTTP spoza zakresu od 1xx do 5xx, powinieneś sprawdzić dokumentację lub specyfikację konkretnego systemu lub protokołu, z którego korzystasz, aby zrozumieć jego znaczenie i sposób interpretacji.