wget имеет удобную опцию, которая позволяет вам загружать несколько файлов из одного места
(Я имею в виду комбинацию --base
и --input-file
)
Преимущество этого в том, что если это возможно, wget пытается повторно использовать открытый сокет/соединение.
Мне было интересно, можно ли выполнить несколько POST-запросов с помощью wget. (Вероятно, мне придется писать это на Python, так как я не смог найти такого использования в документации wget)
т.е. внутри входного файла у меня будут данные поста (в моем случае json):
{"results":1}
{"results":2}
и запрос типа:
wget --header "Content-Type: application/json" -i input.data http://example.com/api/data
решение1
Я думаю, вы ищете --post-file
параметр. -i
используется для GET
метода (предоставление списка URL-адресов), а не POST
:
wget --header "Content-Type: application/json" --post-file input.data http://example.com/api/data
Вы можете обратиться к странице руководства
Альтернативой может быть использование curl
:
curl -H "Content-Type: application/json" -X POST -d @input.data http://example.com/api/data