Ответ
HTTP статус-коды — это трехзначные числа, которые сервер возвращает в ответ на клиентский запрос. Они сгруппированы в пять классов по первой цифре.
| Класс | Описание | Ключевые примеры |
|---|---|---|
| 1xx (Информационные) | Запрос получен, процесс продолжается. | 100 Continue — сервер готов принять тело запроса. |
| 2xx (Успешные) | Запрос успешно обработан. | 200 OK — стандартный ответ для успешных запросов.201 Created — ресурс создан (часто после POST).204 No Content — успешно, но тело ответа отсутствует. |
| 3xx (Перенаправления) | Для завершения запроса требуются дальнейшие действия (часто — редирект). | 301 Moved Permanently — ресурс навсегда перемещен по новому URL.302 Found — ресурс временно доступен по другому адресу. |
| 4xx (Ошибки клиента) | Ошибка на стороне клиента (неверный запрос). | 400 Bad Request — сервер не понял запрос из-за неверного синтаксиса.401 Unauthorized — требуется аутентификация.403 Forbidden — доступ запрещен (нет прав).404 Not Found — ресурс не найден. |
| 5xx (Ошибки сервера) | Сервер не смог выполнить корректный запрос. | 500 Internal Server Error — общая ошибка сервера.502 Bad Gateway — сервер, выступая в роли шлюза, получил недопустимый ответ.503 Service Unavailable — сервер временно перегружен или на обслуживании. |
Пример проверки в автотесте (Python + requests):
import requests
response = requests.get('https://api.example.com/users')
# Проверяем, что запрос успешен
assert response.status_code == 200, f'Ожидался статус 200, получен {response.status_code}'
# Или проверяем на успешный класс кодов (2xx)
assert response.ok == True