Я полагаю, что еще один правильный способ достичь этого - создать еще один ресурс, представляющий вашу коллекцию ресурсов.
Например, представьте, что у нас есть конечная точка, такая как /api/sheep/{id}
, и мы можем POST к /api/sheep
, чтобы создать овечий ресурс.
Теперь, если мы хотим поддержать массовое создание, мы должны рассмотреть новый ресурс скопления в /api/flock
(или /api/<your-resource>-collection
, если вам не хватает лучшего значащего имени). Помните, что ресурсам не нужно сопоставлять вашу базу данных или модели приложений . Это распространенное заблуждение.
Ресурсы являются представлением более высокого уровня, не связанным с вашими данными. Работа с ресурсом может иметь значительные побочные эффекты, такие как отправка предупреждения пользователю, обновление других связанных данных, запуск долгоживущего процесса и т. Д. Например, мы можем отобразить файловую систему или даже команду unix ps
как REST API.
Я думаю, можно с уверенностью предположить, что использование ресурса может также означать создание нескольких других объектов в качестве побочного эффекта.