У меня очень простой вопрос: можно ли отправить HTTP-запрос из командной строки * nix, указав в качестве аргумента файл, содержащий все параметры?

В документации REST API мы часто видим такую спецификацию

POST /oauth/token HTTP/1.1
Host: api.example.com
Content-Type: application/x-www-form-urlencoded

grant_type=password
  &client_id=<API_KEY>
  &client_secret=<API_SECRET>
  &username=<USER_USERNAME>
  &password=<USER_PASSWORD>

Чтобы избежать слишком длинных и неудобных для редактирования командных строк, можно ли поместить эту информацию в файл в вышеупомянутом формате (который кажется довольно стандартным)? В идеале что-то с curl, которое будет выглядеть

curl --input-file myparameters.txt

Я не смог найти такую функцию в документации curl. Может быть, с другим инструментом командной строки? Заранее спасибо.

1 ответ1

-1

Если вы делаете это из командной строки UNIX, я не понимаю, почему не было бы так сложно создать скрипт, который по сути анализирует ваш текстовый ввод, а затем конвертирует его в то, что curl может использовать в CLI. Например, если строка начинается с 'HOST', вы можете использовать sed для создания строки, которая представляет имя хоста в конце строки, которая представляет ввод программы curl. То же самое относится и к остальным.

Иначе, почему бы вам не попробовать самостоятельно написать простую программу / скрипт клиента / оболочки? Это не так сложно, просто утомительно, и вы всегда можете обратиться сюда за дополнительной помощью (я недавно сделал нечто подобное, чтобы протестировать настройку брандмауэра).

http://alternativeto.net/software/curl/

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .