У меня есть ресурс, который по существу требует другого ресурса в качестве входных данных для создания. Например:Имеет ли смысл использовать параметры запроса и тела в запросе POST для REST API?
POST /v1/NewResource
body: {InputResource}
Самое интересное, однако, заключается в том, что создание NewResource дорого, а сам ресурс является временным (не сохранилась). Некоторым потребителям может потребоваться только часть ресурса. Итак, у меня действительно есть два входных параметра: данные, необходимые для создания, а затем обработка инструкций от потребителя, чтобы контролировать, как много работы действительно делается.
Я вижу два пути (по крайней мере):
POST /v1/NewResource?detailLevel=base|full
body: {InputResource}
против
POST /v1/NewResource
body: {Request.detailLevel and Request.InputResource}
Является первым один даже вариант? У кого-нибудь есть какие-либо предпочтения/опыт в любом случае? Существует определенная элегантность в том, что полезная нагрузка - это только данные, необходимые и отделяющие от инструкций по обработке. Я понимаю, что здесь нет правильного или неправильного ответа, просто любопытно в мыслях сообщества.