Kody stanu HTTP
Odpowiedź HTTP zaczyna się od trzycyfrowego kodu i krótkiej frazy przyczyny. Pierwsza cyfra to całe podsumowanie: 1xx jest tymczasowe, 2xx powiodło się, 3xx wskazuje gdzieś indziej, 4xx obwinia żądanie, 5xx obwinia serwer. Jeśli pamiętasz tylko to, możesz przeczytać dziennik, który nigdy wcześniej nie widziałeś.
Frazy przyczyn tutaj są tymi z RFC, w angielskim, ponieważ to właśnie podróżuje na przewodzie — serwer wysyła "Not Found", nie tłumaczenie tego, i frazę, którą grepujesz w dzienniku, musi pasować do bajtów, które faktycznie zostały wysłane.
Rozróżnienia, które powodują rzeczywiste problemy, znajdują się wewnątrz klas, a nie między nimi: 401 versus 403, 301 versus 308, i 502 versus 503 każdy odpowiada na inne pytanie o to, co zrobić dalej, i każdy jest rutynowo używany dla drugiego.
1xx — Informacyjny
3Tymczasowy: odpowiedź nie jest ostateczna i następna.
| Kod | Fraza przyczyny | Co to oznacza |
|---|---|---|
| 100 | Continue | Nagłówki odbierane, kontynuuj wysyłanie treści. |
| 101 | Switching Protocols | Przełączanie protokołów — uścisk dłoni WebSocket. |
| 103 | Early Hints | Wczesne wskazówki: preload te zasoby, podczas gdy rzeczywista odpowiedź jest przygotowywana. |
2xx — Sukces
5Żądanie zostało otrzymane, rozumiane i zaakceptowane.
| Kod | Fraza przyczyny | Co to oznacza |
|---|---|---|
| 200 | OK | Sukces, z treścią. |
| 201 | Created | Utworzony.Powinien nosić nagłówek Location wskazujący nowy zasób. |
| 202 | Accepted | Zaakceptowane do przetwarzania, które jeszcze nie nastąpiło. |
| 204 | No Content | Sukces i celowo bez treści.Prawidłowa odpowiedź na DELETE, lub zapis bez niczego do zwrócenia. |
| 206 | Partial Content | Zawartość częściowa — odpowiedź na żądanie Range. Wznowitalnych pobierań. |
3xx — Przekierowanie
6Zasób jest gdzieś indziej, lub twoją kopię buforowaną jest wciąż dobra.
| Kod | Fraza przyczyny | Co to oznacza |
|---|---|---|
| 301 | Moved Permanently | Przeniesiony na stałe. Zaktualizuj swoje łącza; bufory mogą to przechowywać na zawsze. |
| 302 | Found | Znaleziono — tymczasowe przekierowanie.Szeroko wdrażane jako przełączenie metody na GET, które 307 naprawia. |
| 303 | See Other | Patrz inne: pobierz wynik za pomocą GET. Przekierowanie po formularzu POST. |
| 304 | Not Modified | Nie zmodyfikowany — twoja kopia buforowana jest bieżąca. Wysyłane bez treści. |
| 307 | Temporary Redirect | Tymczasowe przekierowanie, metoda i treść zachowywane. |
| 308 | Permanent Redirect | Trwałe przekierowanie, metoda i treść zachowywane. |
4xx — Błąd klienta
14Żądanie to problem. Powtórzenie go bez zmian będzie działać ponownie.
| Kod | Fraza przyczyny | Co to oznacza |
|---|---|---|
| 400 | Bad Request | Serwer nie mógł przeanalizować żądania w ogóle. |
| 401 | Unauthorized | Nie uwierzytelniony — serwer nie wie, kim jesteś.Nazwany Unauthorized, ale oznacza nieuwierzytelnionym. Powinien zawierać WWW-Authenticate. |
| 403 | Forbidden | Uwierzytelniony i wciąż niedozwolony. Lepsze poświadczenia nie będą pomocne. |
| 404 | Not Found | Brak takiego zasobu, i serwer nie powie, czy kiedykolwiek był. |
| 405 | Method Not Allowed | Zła metoda dla tego adresu URL.Musi wymienić te, które działają w nagłówku Allow. |
| 406 | Not Acceptable | Nic dostępnego w formacie twojej nagłówka Accept. |
| 409 | Conflict | Konflikty z bieżącym stanem — edycja względem starszej wersji. |
| 410 | Gone | Poszło: istniało i zostało celowo usunięte. Silniejsze niż 404. |
| 413 | Content Too Large | Treść jest większa niż serwer akceptuje. |
| 415 | Unsupported Media Type | Serwer nie obsługuje tego Content-Type. |
| 418 | I'm a teapot | Jestem czajnikiem. Żart z kwietnia 1998 r., na stałe zarezerwowany. |
| 422 | Unprocessable Content | Przeanalizowane prawidłowo, zawartość nieprawidłowa — brakujące pole, zła wartość. |
| 429 | Too Many Requests | Ograniczone stawkami.Szukaj Retry-After przed ponowieniem próby i wycofaj się wykładniczo. |
| 451 | Unavailable For Legal Reasons | Zablokowany z powodów prawnych. Liczba to aluzja do Fahrenheit 451. |
5xx — Błąd serwera
6Żądanie może być w porządku. To są te warte ponowienia.
| Kod | Fraza przyczyny | Co to oznacza |
|---|---|---|
| 500 | Internal Server Error | Nieobsłużony błąd na serwerze. Nic do naprawy po twojej stronie. |
| 501 | Not Implemented | Serwer w ogóle nie implementuje tej metody. |
| 502 | Bad Gateway | Proxy dotarł do serwera upstream i wrócił z czymś do kłopotów. |
| 503 | Service Unavailable | Celowo nie obsługuje — przeciążony lub w konserwacji.Stan, który powinien nosić Retry-After. |
| 504 | Gateway Timeout | Proxy zrezygnował z czekania na serwer upstream. |
| 505 | HTTP Version Not Supported | Wersja HTTP w żądaniu nie jest obsługiwana. |