У меня есть служба моделирования REST предметов и контейнеров. Элементы - это отдельные атомарные объекты, контейнеры - это объекты, которые содержат элементы. Как бы я смоделировал эти отношения RESTful?
Например, вот запрос на товар:
http://server/items/1
=> {"name": "Item 1"}
Предположим, что товар находится в контейнере:
http://server/containers/1
=> [{"name": "Item 1"}, {"name": "Item 2"}...]
Как бы я смоделировал добавление элемента в контейнер? Или удаление предмета из контейнера? Предметы ничего не знают о контейнерах, в которых они находятся, поэтому PUT для этого предмета не будет работать. Контейнеры знают, какие элементы они содержат, но чтобы положить их в контейнер, сначала необходимо загрузить весь контейнер (потенциально очень большой).
В данный момент я отправляю сообщение в контейнер, но параметр запроса 'action' имеет запах кода:
http://server/containers/1?action=add
POST {"name": "Item 1"}
Есть ли лучший способ для этого?