Recherche de site Web

HTTPie - Un client HTTP moderne similaire aux commandes Curl et Wget


HTTPie (prononcé aitch-tee-tee-pie) est un client HTTP en ligne de commande de type cURL, moderne, convivial et multiplateforme écrit en Python. Il est conçu pour rendre l'interaction CLI avec les services Web facile et aussi conviviale que possible.

Il dispose d'une simple commande http qui permet aux utilisateurs d'envoyer des requêtes HTTP arbitraires en utilisant une syntaxe simple et naturelle. Il est principalement utilisé pour les tests, le débogage sans problème et principalement pour interagir avec les serveurs HTTP, les services Web et les API RESTful.

  • HTTPie est livré avec une interface utilisateur intuitive et prend en charge JSON.
  • Syntaxe de commande expressive et intuitive.
  • Mise en évidence de la syntaxe, sortie du terminal formatée et colorisée.
  • Prise en charge HTTPS, proxys et authentification.
  • Prise en charge des formulaires et des téléchargements de fichiers.
  • Prise en charge des données et des en-têtes de requêtes arbitraires.
  • Téléchargements et extensions de type Wget.
  • Prend en charge Python 2.7 et 3.x.

Dans cet article, nous montrerons comment installer et utiliser httpie avec quelques exemples de base sous Linux.

Comment installer et utiliser HTTPie sous Linux

La plupart des distributions Linux fournissent un package HTTpie qui peut être facilement installé à l'aide du gestionnaire de packages système par défaut, par exemple :

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

Une fois installé, la syntaxe d'utilisation de httpie est :

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

L'utilisation la plus basique de httpie est de lui fournir une URL comme argument :

http example.com

Voyons maintenant quelques utilisations de base de la commande httpie avec des exemples.

Envoyer une méthode HTTP

Vous pouvez envoyer une méthode HTTP dans la requête, par exemple, nous enverrons la méthode GET qui est utilisée pour demander des données à une ressource spécifiée. Notez que le nom de la méthode HTTP vient juste avant l'argument URL.

http GET tecmint.lan

Télécharger un fichier

Cet exemple montre comment télécharger un fichier vers transfer.sh à l'aide de la redirection d'entrée.

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

Télécharger un fichier

Vous pouvez télécharger un fichier comme indiqué.

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

Soumettre un formulaire

Vous pouvez également soumettre des données à un formulaire comme indiqué.

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

Afficher les détails de la demande

Pour voir la requête qui est envoyée, utilisez l'option -v, par exemple.

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

Authentification HTTP de base

HTTPie prend également en charge l'authentification HTTP de base à partir de la CLI sous la forme :

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

En-têtes HTTP personnalisés

Vous pouvez également définir des en-têtes HTTP personnalisés en utilisant la notation Header:Value. Nous pouvons tester cela en utilisant l'URL suivante, qui renvoie les en-têtes. Ici, nous avons défini un User-Agent personnalisé appelé « strong>TEST 1.0 » :

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

Consultez une liste complète des options d’utilisation en exécutant.

http --help
OR
man  ttp

Vous pouvez trouver d'autres exemples d'utilisation dans le référentiel HTTPie Github : https://github.com/jakubroztocil/httpie.

HTTPie est un client HTTP de ligne de commande moderne et convivial de type cURL, avec une syntaxe simple et naturelle, et affiche une sortie colorisée. Dans cet article, nous avons montré comment installer et utiliser httpie sous Linux. Si vous avez des questions, contactez-nous via le formulaire de commentaires ci-dessous.