HTTPie – Completo e intuitivo cliente HTTP

por | diciembre 17, 2017

Ya que es domingo conviene hacer las cosas fáciles. Un sencillo cliente HTTP como HTTPie nunca viene mal y se merece una entradilla en el blog.

Para instalarlo en mi Debian Stretch me ha bastado con:

apt-get install httpie

Si utilizáis alguna derivada como Ubuntu o ElementaryOS también os servirá con apt-get. Para el resto:

# RHEL y derivadas
yum install httpie
# Arch Linux
pacman -S httpie

HTTPie está desarrollado en Python por lo que podemos encontrarlo en los repos PyPI en su última versión:

pip install httpie

Una vez lo tenemos instalado vamos a ver algunos casos de uso. Siempre utilizaremos el comando http. Por ejemplo para comprobar los headers de respuesta de una petición HTTP GET:

Petición GET en modo detallado (verbose). Podemos ver datos sobre nuestra petición, headers y HTML de respuesta:

De la misma manera que con wget, es posible descargar con la opción --download o -d:

Otro de los puntos fuertes de HTTPie es la facilidad para interactuar con una API remota:

La herramienta tiene muchas más funcionalidades: especificar autenticación en la request (basic, digest, SPNEGO, OAuth, NTLM…), modificar headers de la request, manejo de sesiones HTTP (útil por ejemplo si estamos haciendo debug de la gestión de sesiones de una aplicación), uso de certificados SSL de cliente, etc…

Podemos probar httpie desde su web sin necesidad de instalarlo en nuestra máquina. Tenéis toda la documentación de uso, instalación en diversas plataformas y troubleshooting en el repositorio de HTTPie en GitHub.