Из определения POST в RFC2616 можно сделать вывод, что СЛЕДУЕТ создавать только один ресурс (как определено в RFC).Например, в этом разделе говорится о « созданном объекте » (единственном числе) по всему абзацу.Более очевидный раздел - это рекомендуемый ответ, когда новые ресурсы создаются через POST:
Если ресурс создан на исходном сервере, ответ
ДОЛЖЕН быть 201 (Создан) и содержат сущность, которая описывает состояние
запроса и ссылается на новый ресурс, а также заголовок Location
(см. Раздел 14.30 ).
Насколько мне известно, вы можете вернуть только одно местоположение в заголовке местоположения.
Вышеупомянутый RFC2616 устарел (спасибо @Eric Stein). обновленная семантика POST может быть найдена в RFC7231 .Опять же, рекомендуемый ответ намекает на семантику:
Если один или несколько ресурсов были созданы на исходном сервере как
результат успешной обработки запроса POST, исходный сервер
СЛЕДУЕТ отправлять ответ 201 (Создано), содержащий заголовок Location
поле, которое предоставляет идентификатор для созданного первичного ресурса
( Раздел 7.1.2 ) и представление, описывающее состояние
запрос со ссылкой на новый ресурс (ы).
Хотя POST МОЖЕТ создать несколько ресурсов, он ДОЛЖЕН создать только один корневой ресурс (или, по крайней мере, это то, что предлагает формулировка).
В целом, существует лишь несколько жестких ограничений относительно того, что разрешено и запрещено, таким образом, формулировка RFC (ДОЛЖНА, МОЖЕТ, ...).Пока вы не видите НЕОБХОДИМО или НЕ ДОЛЖНО в соответствующем RFC, вы можете делать все, что пожелаете, но можете нарушать передовой опыт.