1. Коди відповідей
Першим рядком HTTP-відповіді йде сток стану. Він складається з двох частин: тризначного числа (код відповіді) та текстового повідомлення (опис відповіді).
КІД-ВІДПОВІДІ ТЕКСТОВИЙ ОПИС
За кодом відповіді клієнт дізнається про стан свого запиту і вирішує, що йому робити далі. Приклади різних відповідей від сервера:
| 201 Created |
|---|
| 401 Unauthorized |
| 507 Insufficient Storage |
Коди відповідей поділяються на 5 категорій. Перша цифра коду відповіді визначає, до якої категорії він належить.
Усі відповіді, що починаються з цифри 1, належать до класу інформаційних. Ми про них докладно не говоритимемо…
2. Код відповіді 200
Адже є інші, які нам набагато цікавіші. Всі відповіді, що мають вигляд 2xx, належать до успішних. Найулюбленіша програмістами відповідь – це 200 OK, яка означає, що все добре, запит успішно виконано.
Також тобі може стати в пригоді список інших "хороших" відповідей:
| Код | Рядок | Опис |
|---|---|---|
| 200 | OK | добре |
| 201 | Created | Створено |
| 202 | Accepted | Прийнято |
| 203 | Non-Authoritative Information | Інформація не авторитетна |
| 204 | No Content | Немає вмісту |
| 205 | Reset Content | Скинути вміст |
| 208 | Already Reported | Вже повідомлялося |
3. Коди відповідей 301, 302
Відповіді, які мають вигляд 3xx, належать до класу перенаправлення. Вони вказують на те, що ресурс було переміщено до іншого місця.
Найпопулярніші з них:
- 301 – переміщено назавжди
- 302 – переміщено тимчасово
У розмовній мові програмістів ти часто чутимеш "302-й редирект" або "301-й редирект" – це саме про це.
Повний список трьохсотих відповідей:
| Код | Рядок | Опис |
|---|---|---|
| 300 | Multiple Choices | безліч варіантів вибору |
| 301 | Moved Permanently | переміщено назавжди |
| 302 | Moved Temporarily | переміщено тимчасово |
| 303 | See Other | дивитися інше |
| 304 | Not Modified | не змінювалося |
| 305 | Use Proxy | використовувати проксі |
| 307 | Temporary Redirect | тимчасове перенаправлення |
| 308 | Permanent Redirect | постійне перенаправлення |
4. Код відповіді 404
Всі відповіді, які починаються з цифри 4, позначають помилку на стороні клієнта, і таких помилок дуже багато. Найпопулярнішу ти точно знаєш: це відповідь "404 – не знайдено".
Інші часті відповіді наведені в таблиці:
| Код | Рядок | Опис |
|---|---|---|
| 400 | Bad Request | некоректний запит |
| 401 | Unauthorized | не авторизований |
| 402 | Payment Required | необхідна оплата |
| 403 | Forbidden | заборонено |
| 404 | Not Found | не знайдено |
| 405 | Method Not Allowed | метод не підтримується |
| 406 | Not Acceptable | неприйнятно |
| 407 | Proxy Authentication Required | необхідна аутентифікація проксі |
| 408 | Request Timeout | минув час очікування |
| 413 | Payload Too Large | корисне навантаження занадто велике |
| 414 | URI Too Long | URI надто довгий |
| 429 | Too Many Requests | занадто багато запитів |
| 499 | Client Closed Request | клієнт закрив з'єднання |
5. Код відповіді 501
І, нарешті, остання категорія — помилки на стороні сервера. Усі такі помилки починаються з цифри 5. Найчастіша помилка для розробника — це 501 (функціонал не реалізований). Буває й таке.
Ознайомся з цими кодами помилок: вони тепер твої друзі до кінця життя. Ну і як завжди, наведемо таблицю з найкориснішими кодами помилок на стороні сервера:
| Код | Рядок | Опис |
|---|---|---|
| 500 | Internal Server Error | Внутрішня помилка сервера |
| 501 | Not Implemented | не реалізовано |
| 502 | Bad Gateway | помилковий шлюз |
| 503 | Service Unavailable | сервіс недоступний |
| 504 | Gateway Timeout | шлюз не відповідає |
| 507 | Insufficient Storage | переповнення сховища |
| 508 | Loop Detected | нескінченний перенапрямок |
| 509 | Bandwidth Limit Exceeded | вичерпано пропускну ширину каналу |
| 520 | Unknown Error | невідома помилка |
| 521 | Web Server Is Down | вебсервер не працює |
| 522 | Connection Timed Out | з'єднання не відповідає |
| 523 | Origin Is Unreachable | джерело недоступне |
| 524 | A Timeout Occurred | час очікування минув |
| 525 | SSL Handshake Failed | Квітування SSL не вдалося |
| 526 | Invalid SSL Certificate | недійсний сертифікат SSL |
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ