Enviar solicitação HTTP com arquivo de parâmetros

0

A minha pergunta é muito simples: é possível enviar uma solicitação HTTP da linha de comando * nix especificando um arquivo, contendo todos os parâmetros, como um argumento?

Na documentação das APIs REST, muitas vezes vemos esse tipo de especificação

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>

Para evitar linhas de comando que são muito longas e difíceis de editar, é possível colocar essas informações em um arquivo, no formato mencionado acima (o que parece bastante normal)? Idealmente algo com ondulação que se parecesse com

curl --input-file myparameters.txt

Não encontrei esse recurso na documentação de curl. Talvez com outra ferramenta de linha de comando? Agradecemos antecipadamente.

    
por benoit 24.03.2015 / 12:40

1 resposta

-1

Se você estiver fazendo isso a partir da linha de comando do UNIX, eu não vejo por que não seria tão difícil criar um script que essencialmente analise sua entrada de texto e, em seguida, converta-o em algo que o curl pode usar na CLI . Por exemplo, se uma linha começa com 'HOST' você pode usar sed para criar uma string que represente o nome do host no final de uma linha que representa a entrada do programa curl. O mesmo vale para o resto.

Senão, por que você não tenta simplesmente escrever um programa / script simples de cliente / wrapper? Não é tão difícil, apenas tedioso e você sempre pode pedir ajuda aqui (eu fiz algo parecido há muito tempo para testar a configuração do firewall).

link

    
por 24.03.2015 / 13:17