Сценарий:
ЗапросA POST отправляется для обработки заказа, который приведет к извлечению данных из внешнего источника данных.
Есть три возможных результата:
- Источник данных возвратил данные для запроса
- В запросе не было данных (это рассматривается как ошибка)
- Не удалось получить доступ к источнику данных (может быть недоступен для обслуживания)
Очевидным ответом для 1 является 200: OK или 201: Created (сущность создается из этого запроса).
Какие коды статуса подходят для 2 и 3?
Коды состояния, которые я рассмотрел:
-
503: Service Unavailableпри отсутствии источника данных -
500: Internal Server Errorпри отсутствии источника данных -
502: Bad Gateway, когда "нет данных" -
404: Not Found, когда "нет данных" -
403: Forbidden, когда "нет данных" -
412: Precondition Failed, когда "нет данных"