Какие ошибки у статусов кода 400?
Ошибки и отладка
Статус-коды 4xx — ошибки клиента: 400 (некорректный запрос), 401 (не аутентифицирован), 403 (нет прав), 404 (не найдено), 409 (конфликт), 422 (ошибка валидации), 429 (лимит запросов).
Основные ошибки 4xx
400 Bad Request
Некорректный/невалидный запрос (синтаксис, отсутствуют обязательные поля):
Неверный формат JSON, невалидные параметры401 Unauthorized
Не аутентифицирован — нет/невалиден токен:
Требуется вход; токен отсутствует или истёк403 Forbidden
Аутентифицирован, но нет прав на ресурс:
Вошёл, но нет доступа к чужим данным / админке404 Not Found
Ресурс не существует:
GET /users/999 → нет такого пользователя405 Method Not Allowed
Метод не поддерживается для ресурса.
409 Conflict
Конфликт состояния (дубликат, конкурентное изменение):
Регистрация с существующим email422 Unprocessable Entity
Синтаксис верный, но данные не проходят бизнес-валидацию:
Email в правильном формате, но уже занят / пароль слишком короткий429 Too Many Requests
Превышен лимит (rate limiting):
Слишком много запросов → Retry-AfterЧастые различия на собеседовании
- 401 vs 403: 401 — не аутентифицирован (кто ты?), 403 — аутентифицирован, но нет прав.
- 400 vs 422: 400 — некорректный запрос (синтаксис), 422 — валидный синтаксис, но невалидные данные.
Обработка на фронте
- 401 → редирект на логин / refresh.
- 403 → сообщение «нет доступа».
- 404 → страница «не найдено».
- 422/400 → показать ошибки валидации.
- 429 → повтор с задержкой.
Коротко для собеседования
Ошибки 4xx (клиент): 400 (некорректный запрос), 401 (не аутентифицирован — нужен вход), 403 (нет прав), 404 (не найдено), 409 (конфликт — дубликат), 422 (ошибка валидации данных), 429 (лимит запросов). Различать 401 (кто ты?) vs 403 (нет прав) и 400 (синтаксис) vs 422 (невалидные данные). На фронте — редирект/сообщения/повтор по коду.