whereeaglesdare
@whereeaglesdare

Какой должен быть правильный ответ для PUT и POST запросов в RESTful API?

Добрый день
Есть простой REST веб сервис.
При создании сущности я отправляю ответ СREATED и location с ссылкой на сущность(руководствовался этой статьей )
Когда же дошел до метода PUT, то возник вопрос, а какой должен быть правильный ответ
В разных ресурсах пишут по разному(кто 204, кто 201), например, тут
Как же все таки правильно? На какой авторитетный источник стоит полагаться в таких вопросах?
  • Вопрос задан
  • 421 просмотр
Решения вопроса 1
firedragon
@firedragon
Не джун-мидл-сеньор, а трус-балбес-бывалый.
Стандартные ответы

2хх все нормально
3хх действие произведено
4хх необходимо пользовательская реакция
5хх ошибка сервера

А уж какие вы коды отсылаете, это уже ваше дело, главное что бы вы это документировали.
И не считайте статьи догмой, статусы ошибок указывают только на то что вы решили часть данных переложить в метаданные. Это чисто архитектурное решение. Вы можете вообще отправлять всегда 200 и добавить поле в json

{
"status": "Not found",
"statusCode": 404
}
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
inoise
@inoise
Solution Architect, AWS Certified, Serverless
любой 2xx является успешным, поэтому 204 отдается только когда тело ответа не будет отправлено. 201 Когда POST/PUT запрос успешно отработал и в ответе есть контент (не важно какой)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы