Le_Traceur_Snork
@Le_Traceur_Snork
PHP-программист | Wordpress

Должен ли RESTful API возвращать 200 OK при запросе списка записей категории, если сама категория не существует?

Есть RESTful API на сайте-блоге (Wordpress, но это к делу не относится). Я понимаю, что если, скажем, в категории `novosti` 0 записей, то роут /posts/by-category/novosti/?limit=100&offset=0 должен возвращать 200 OK, при этом само тело может выглядеть как-то так:
{total: 0, items: []}, это довольно логично. Но что, если сама категория `novosti` не существует? Должен ли роут всё равно выдавать 200 OK и {total: 0, items: []} или лучше 404 Not Found?
  • Вопрос задан
  • 58 просмотров
Решения вопроса 1
AleksandrB
@AleksandrB
Совсем недавно вывел "Hello world"
Категория - это ресурс, такой ресурс существует? Нет. Значит 404
И пустое тело, но ресурс существует - это 204, а не 200
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@Vitsliputsli
Если 204, то тело должно быть пустое, следовательно нужно будет дополнительно обрабатывать код 204. Либо не писать дополнительную обработку, и сделать как автор и предположил. По-моему, нет смысла в погоне заиспользовать как можно больше http-кодов, усложняя код, пусть и незначительно.
Касательно несуществующего ресурса, если он действительно несуществует как бизнесовая сущность, тогда 404. Если же мы просто не нашли подходящих строчек в базе, т.е. ресурс существует, но это пустой список, то удобнее ответить как и в предудущей ситуации.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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