Última actualización: 15 de diciembre de 2023

3.4. Clientes HTTP

Existen varias herramientas clientes para el protocolo

3.5. Cliente cURL

  • Escrito en C y usa la libreria libcurl.

  • Admite muchos otros protocolos además de HTTP(S).

  • Admite cualquier cantidad de URL en la línea de comando.

  • Puede enviar POST binarios.

  • Admite múltiples métodos HTTP en una sola línea de comando para diferentes URL.

  • Documentado en una página man para documentación fuera de línea.

  • Admite solicitudes HTTP/1.0.

  • Características URL «globbing» para rangos y secuencias.

  • Permite modificaciones de encabezado más invasivas, como pasar letras no válidas en encabezados personalizados ( Höst:), reemplazar Content-Length:en un POST y eliminar el Host:encabezado de una solicitud. O simplemente agregar un encabezado sin espacio después de los dos puntos.

  • Admite globos oculares felices o uso explícito de ipv4/ipv6.

  • Admite trucos de conexión personalizados como –resolve y –connect-to.

  • Compatibilidad con HTTP/2 (tanto para HTTP:// como para HTTPS:// URL).

  • Compatibilidad con HTTP/3.

  • Ofrece compresión usando gzip, brotli y zstd.

  • Se envía de forma predeterminada en macOS y Windows 10.

3.6. Cliente httpie

HTTPie (pronunciado aitch-tee-tee-pie) es un cliente HTTP de línea de comandos sustituto del cURL. Su objetivo es hacer que la interacción de CLI con los servicios web sea lo más amigable posible para los usuarios.

HTTPie vs cURL

Figura 3.1, Figura 3.1, HTTPie vs cURL

Proporciona un simple comando http que permite enviar solicitudes HTTP arbitrarias utilizando una sintaxis simple y natural, y muestra resultados en color. HTTPie se puede usar para probar, depurar y, en general, interactuar con servidores HTTP.

3.6.1. Características

HTTPie consiste en un solo comando http diseñado para la depuración e interacción sin problemas con los servidores HTTP, las API RESTful y los servicios web, lo cual logra mediante las siguientes características principales:

  • Sintaxis de comando expresiva e intuitiva.

  • Salida de terminal formateada y coloreada.

  • Soporte JSON incorporado.

  • Formularios y archivos subidos.

  • HTTPS, proxies y soporte de autenticación.

  • Datos de solicitud arbitrarios.

  • Encabezados personalizados.

  • Sesiones persistentes.

  • Descargas tipo Wget.

  • Soporte Python 2.7 y 3.x.

  • Soporte para datos de solicitud arbitrarios y encabezados.

  • Soporte para Linux, macOS y Windows.

  • Extensiones (Plugins).

  • Documentación.

  • Cobertura de prueba (Test coverage).

3.6.2. Instalación

Es una aplicación Python, por lo que puedo instalarla con:

$ pip3 install httpie

3.6.3. Uso

Una vez instalado podéis ejecutar el «Hello World»:

$ http httpie.org

El uso de la herramienta tiene la siguiente sintaxis,

$ http [flags] [metodo] <url> [item [item]]

Por hacer

TODO Terminar de escribir sobre el paquete «httpie».


Ver también

Consulte la sección de lecturas suplementarias del entrenamiento para ampliar su conocimiento en esta temática.


¿Cómo puedo ayudar?

¡Mi soporte está aquí para ayudar!

Mi horario de oficina es de lunes a sábado, de 9 AM a 5 PM. GMT-4 - Caracas, Venezuela.

La hora aquí es actualmente 7:35 PM GMT-4.

Mi objetivo es responder a todos los mensajes dentro de un día hábil.

Contrata mi increíble soporte profesional