я создаю RESTful API, который будет обрабатывать ряд взаимодействий с пользователем, включая размещение заказов с использованием сохраненных кредитных карт.
В случае успешного заказа я возвращаю 200 OK, а в случае, когда запрос заказа неверен или недействителен, я возвращаю 400 Bad Request.Но что мне возвращать, если во время фактической обработки заказа возникла проблема?
Последний шаг - проблема - что мне вернуть, если заказ не выполнен по какой-либо другой причине? Возможные сценарии могут включать:
Это не похоже на то, что 400 или 500. Во всяком случае, я мог бы увидеть это как 400, если нет лучшего кода - запрос был недействительным в соответствии с бизнес-правилами. Это просто не кажется точным.
Edit: Также найдено это существующее обсуждение той же темы. Все ответы там, похоже, указывают на использование кодов состояния для этого типа нарушения, с некоторыми обсуждениями использования расширения 400, 409 или 422.