Как только вы намереваетесь выполнить запрос GET
, вы можете отправить данные в строку запроса , используя один из следующих подходов:
curl -G http://example.org -d "query=1,2,3"
curl -G http://example.org -d "query=1&query=2&query=3"
Позвольте мне подчеркнуть, что полезные данные в запросах GET
не рекомендуются. Цитирование RFC 7231 :
Полезная нагрузка в сообщении запроса GET
не имеет определенной семантики; отправка тела полезной нагрузки по запросу GET
может привести к тому, что некоторые существующие реализации отклонят запрос.
Также следует помнить, что GET
запросов не должны использоваться для изменения ресурсов : они предназначены для использования только для поиска информации, без побочных эффектов. Сказав это, GET
является одновременно безопасным и идемпотентным . Вы можете увидеть более подробную информацию об этих понятиях в этом ответе .
Если данные должны быть отправлены в полезной нагрузке (и вы намереваетесь изменить ресурс), тогда придерживайтесь POST
. Предполагая, что ваша полезная нагрузка является документом JSON, у вас будет что-то вроде:
curl -X POST http://example.org \
-H "Content-Type: application/json" \
-d '["1", "2", "3"]'