Pesquisa de site

HTTPie – um cliente HTTP moderno semelhante aos comandos Curl e Wget


HTTPie (pronuncia-se aitch-tee-tee-pie) é um cliente HTTP de linha de comando semelhante a cURL, moderno, fácil de usar e multiplataforma, escrito em Python. Ele foi projetado para tornar a interação CLI com serviços da web fácil e o mais amigável possível.

Possui um comando http simples que permite aos usuários enviar solicitações HTTP arbitrárias usando uma sintaxe direta e natural. Ele é usado principalmente para testes, depuração sem problemas e principalmente para interagir com servidores HTTP, serviços da web e APIs RESTful.

  • HTTPie vem com uma interface intuitiva e suporta JSON.
  • Sintaxe de comando expressiva e intuitiva.
  • Destaque de sintaxe, saída de terminal formatada e colorida.
  • HTTPS, proxies e suporte de autenticação.
  • Suporte para formulários e uploads de arquivos.
  • Suporte para dados e cabeçalhos de solicitação arbitrários.
  • Downloads e extensões do tipo Wget.
  • Suporta ython 2.7 e 3.x.

Neste artigo, mostraremos como instalar e usar o httpie com alguns exemplos básicos no Linux.

Como instalar e usar HTTPie no Linux

A maioria das distribuições Linux fornece um pacote HTTPie que pode ser facilmente instalado usando o gerenciador de pacotes padrão do sistema, por exemplo:

apt-get install httpie  [On Debian/Ubuntu]
dnf install httpie      [On Fedora]
yum install httpie      [On CentOS/RHEL]
pacman -S httpie        [On Arch Linux]

Depois de instalado, a sintaxe para usar httpie é:

http [options] [METHOD] URL [ITEM [ITEM]]

O uso mais básico de httpie é fornecer uma URL como argumento:

http example.com

Agora vamos ver alguns usos básicos do comando httpie com exemplos.

Envie um método HTTP

Você pode enviar um método HTTP na solicitação, por exemplo, enviaremos o método GET que é usado para solicitar dados de um recurso especificado. Observe que o nome do método HTTP vem logo antes do argumento URL.

http GET tecmint.lan

Enviar um arquivo

Este exemplo mostra como fazer upload de um arquivo para transfer.sh usando redirecionamento de entrada.

http https://transfer.sh < file.txt

Baixar um arquivo

Você pode baixar um arquivo conforme mostrado.

http https://transfer.sh/Vq3Kg/file.txt > file.txt		#using output redirection
OR
http --download https://transfer.sh/Vq3Kg/file.txt  	        #using wget format

Envie um formulário

Você também pode enviar dados para um formulário conforme mostrado.

http --form POST tecmint.lan date='Hello World'

Ver detalhes da solicitação

Para ver a solicitação que está sendo enviada, use a opção -v, por exemplo.

http -v --form POST tecmint.lan date='Hello World'

Autenticação HTTP básica

HTTPie também oferece suporte à autenticação HTTP básica da CLI no formato:

http -a username:password http://tecmint.lan/admin/

Cabeçalhos HTTP personalizados

Você também pode definir cabeçalhos HTTP personalizados usando a notação Header:Value. Podemos testar isso usando o seguinte URL, que retorna cabeçalhos. Aqui, definimos um User-Agent personalizado chamado ‘strong>TEST 1.0’:

http GET https://httpbin.org/headers User-Agent:'TEST 1.0'

Veja uma lista completa de opções de uso executando.

http --help
OR
man  ttp

Você pode encontrar mais exemplos de uso no repositório HTTPie Github: https://github.com/jakubroztocil/httpie.

HTTPie é um cliente HTTP de linha de comando moderno e fácil de usar, semelhante a cURL, com sintaxe simples e natural e exibe saída colorida. Neste artigo, mostramos como instalar e usar httpie no Linux. Se você tiver alguma dúvida, entre em contato conosco através do formulário de comentários abaixo.