Может ли один URL иметь два разных объекта (один предмет или набор предметов) быть размещенным и при этом быть RESTLY разработанным? - PullRequest
0 голосов
/ 24 февраля 2012

У меня есть объекты json, которые отправляются в службу отдыха, которая отвечает за создание объектов и их хранение в базе данных.Но у меня есть две ситуации, которые мне нужно обработать.

  1. Публикация объекта с одним человеком и создание одного человека
  2. Публикация массива людей и создание нескольких человек

Могу ли я использовать один и тот же URL-адрес ... т.е. www.mysite.com/people/ и дать серверу определить, является ли он одним человеком или группой людей?Я знаю, что технически могу это сделать, но как мне справиться с этой ситуацией и при этом иметь дизайн RESTful?

1 Ответ

1 голос
/ 24 февраля 2012

Да. «POST» является своего рода символом подстановки и может «сойти» с большинством всего. То, что вы не хотите делать, это сопоставить этот ресурс с базовым ресурсом. Вы не хотите отправлять POST / people, скорее что-то конкретное для задачи.

Итак, вы захотите что-то вроде / people_loader для этой задачи, которая возвращает явный результат процесса (/ people_loader / 1234), который представляет собой ресурс, ссылающийся на новых людей, которых вы только что создали.

/ people - ваш базовый ресурс, поэтому результатом / people_loader будет набор ссылок / people и, возможно, некоторая другая информация для тех объектов, которые не были загружены (из-за ошибок или других ограничений).

...