Вступить в клуб →
лёгкаявопросREST API и валидация данных

Сервис отвечает 200 OK с телом об ошибке: чем это мешает клиентам и мониторингу

Клиент отправляет POST /orders с полем quantity: -3. Сервис проверяет значение, заказ не создаёт и отвечает так:

HTTP/1.1 200 OK

{"success": false, "error": "quantity must be positive"}

Что не так с таким ответом?

  • Ничего страшного: клиент читает поле success, а код ответа — деталь транспорта, её никто не смотрит
  • Нужно отвечать 500: любая ситуация, в которой запрос не выполнен, считается ошибкой сервера
  • Код ответа — часть контракта: ошибку во входных данных отдают статусом 4xx
  • Достаточно писать ошибку в лог: на поведение клиента и мониторинга статус ответа не влияет

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела