Maison  >  Article  >  Tutoriel système  >  Comment installer et utiliser HTTPie et HTTP Prompt sous Linux

Comment installer et utiliser HTTPie et HTTP Prompt sous Linux

WBOY
WBOYavant
2024-02-12 15:03:23626parcourir

HTTPie est un client HTTP en ligne de commande conçu pour les API Web modernes. Il fournit des commandes intuitives et une interface conviviale. Dans ce guide, vous découvrirez les fonctionnalités de HTTPie et comment elles se comparent à cURL. Vous apprendrez également comment installer et commencer à utiliser HTTPie sur votre système Linux.

Avant de commencer

Créez un compte si vous ne l'avez pas déjà fait.

Suivez notre guide pour configurer et sécuriser une instance de calcul pour mettre à jour votre système. Vous souhaiterez peut-être également définir le fuseau horaire, configurer le nom d'hôte, créer un compte utilisateur limité et appliquer l'accès SSH.

Veuillez noter

Les étapes de ce guide sont écrites pour les utilisateurs non root. Les commandes qui nécessitent des privilèges élevés sont préfixées par sudo. Si vous n'êtes pas familier avec la commande sudo, consultez https://www.linuxmi.com/linux-sudo-command.html.

Qu'est-ce que HTTPie ?

HTTPie est un client HTTP en ligne de commande similaire à cURL. Mais contrairement à cURL, HTTPie est conçu pour être plus facile à utiliser avec les API Web modernes. La syntaxe de HTTPie est orientée services Web. Son interface est plus lisible et conviviale que cURL. Ces fonctionnalités font de HTTPie un excellent outil pour tester, déboguer ou consommer des services Web à partir de la ligne de commande.

HTTPie contre cURL

Cette section explorera pourquoi vous pourriez choisir d'utiliser HTTPie au lieu de cURL, d'autant plus que cURL est installé par défaut sur de nombreuses distributions Linux. cURL excelle dans l'extension des options pour répondre à un large éventail de besoins HTTP. HTTPie se concentre sur la prise en charge des requêtes vers les API Web modernes. Lorsque vous utilisez des API Web, elles fournissent les détails les plus pertinents et masquent les informations dont vous n'aurez probablement pas besoin. La sortie de HTTPie vous permet d'interagir avec les services Web de manière plus intuitive et plus claire.

Si vous souhaitez utiliser des API Web, en particulier des API RESTful qui utilisent des données JSON, vous devriez envisager d'utiliser HTTPie. Alternativement, si vous souhaitez un client HTTP pour des besoins plus généraux, envisagez d'utiliser cURL, car il fournit des options pour le rendre plus adaptable.

Vous pouvez en savoir plus sur curlie dans notre Comment installer et utiliser la commande Curlie sous Linux, qui est un client HTTP de ligne de commande moderne avec la lisibilité de HTTPie et l'adaptabilité de cURL.

Comment installer HTTPie

HTTPie est disponible auprès des gestionnaires de packages de la plupart des principales distributions Linux. Vous trouverez ci-dessous les commandes que vous pouvez utiliser lors de l'installation de HTTPie via les gestionnaires de packages de différentes distributions.

Sur Debian et Ubuntu, utilisez la commande suivante :

sudo apt installer httpie

Sous les systèmes d'exploitation AlmaLinux et CentOS, exécutez la commande suivante :

sudo miam installez httpie

Sur Fedora, utilisez la commande suivante :

sudo dnf installer httpie

Après avoir installé HTTPie, vous pouvez vérifier l'installation et y accéder à l'aide de la commande http.

linuxmi@linuxmi /home/linuxmi/www.linuxmi.com                                   
⚡ http --version
1.0.3

如何在 Linux 上 HTTPie 与 HTTP Prompt 安装和使用

Comment utiliser HTTPie

Si vous connaissez d'autres clients HTTP, httppie devrait être plus facile à apprendre. La plupart de son utilisation de base est similaire à cURL, mais elle vous permet de simplifier les commandes dont vous avez besoin.

Les sections suivantes expliquent comment utiliser HTTPie pour gérer les requêtes HTTP les plus courantes lors de l'utilisation de services Web.

Utilisation de base

Vous pouvez voir l'utilisation la plus basique de HTTPie dans la requête GET. Comme cURL, HTTPie ne vous oblige pas à spécifier la méthode de requête. Fournissez simplement l’URL de commande et de demande.

La sortie de

HTTPie inclut les informations d'en-tête de réponse par défaut. Il utilise la coloration syntaxique pour rendre les réponses plus faciles à lire, comme vous pouvez le voir dans la capture d'écran ci-dessous :

L'ajout de données d'en-tête à la requête dans httppie nécessite d'ajouter les données après l'URL, comme indiqué dans la commande ci-dessous. L'exemple suivant récupère une « blague de papa » aléatoire à partir d'un service Web. Vous pouvez voir que la commande ajoute également l'option --follow, qui oblige HTTPie à suivre toutes les redirections d'URL (équivalent à -L dans curl). HTTPie inclut les informations d'en-tête de réponse de redirection dans la sortie.

Méthode de demande

Pour spécifier une méthode de requête dans httppie, incluez simplement le nom de la méthode - GET, POST, PUT, DELETE, etc. - comme première partie de la commande http. Cela peut être vu dans l'exemple suivant, qui utilise le propre service Web de HTTPie pour les tests.

# Afficher les informations de la demande (y compris l'en-tête de retour 200)
http://www.linuxmi.com

如何在 Linux 上 HTTPie 与 HTTP Prompt 安装和使用

# Afficher la demande détaillée (incluant l'en-tête de demande et de retour 200)
http -v www.linuxmi.com

如何在 Linux 上 HTTPie 与 HTTP Prompt 安装和使用

# Afficher uniquement l'en-tête
http -h www.linuxmi.com
http –tête www.linuxmi.com
http –en-tête www.linuxmi.com
http –en-têtes www.linuxmi.com

如何在 Linux 上 HTTPie 与 HTTP Prompt 安装和使用

# 只显示Body
http -b www.linuxmi.com
http –body www.linuxmi.com

# 下载文件
http -d www.linuxmi.com

如何在 Linux 上 HTTPie 与 HTTP Prompt 安装和使用

# 模拟提交表单
http -f POST www.linuxmi.com username=’linuxmi-user’

# 请求删除的方法
http DELETE www.linuxmi.com

# 传递JSON数据请求(默认就是JSON数据请求)
http PUT www.linuxmi.com username=’linuxmi-user’ password=’linuxmi-pwd’

# 如果JSON数据存在不是字符串则用:=分隔,例如
http PUT www.linuxmi.com username=’linuxmi-user’ password=’linuxmi-pwd’ age:=28 a:=true streets:='[“a”, “b”]’

# 模拟Form的Post请求, Content-Type: application/x-www-form-urlencoded; charset=utf-8
http –form POST www.linuxmi.com username=’linuxmi-user’

# 模拟Form的上传, Content-Type: multipart/form-data
http -f POST www.linuxmi.com/jobs username=’linuxmi-user’ file@~/test.pdf

# 修改请求头, 使用:分隔
http www.linuxmi.com User-Agent:mimvp-agent/1.0 ‘Cookie:a=b;b=c’ Referer:http://www.linuxmi.com/

# 认证
http -a username:password www.linuxmi.com
http –auth-type=digest -a username:password www.linuxmi.com

HTTP Prompt – 交互式命令行HTTP客户端

HTTP Prompt (或HTTP-prompt) 是基于HTTPie和prompt_toolkit构建的交互式命令行HTTP客户端,具有自动完成和语法突出显示功能。 它还支持自动cookie,OpenAPI/Swagger集成以及类Unix管道和输出重定向。 此外,它还提供了20多个可以使用的主题。

我们现在将解释如何在 Linux 中安装和简要使用 HTTP-prompt。

如何在Linux中安装HTTP Prompt

您可以使用PIP命令安装HTTP提示,就像常规Python包一样,如图所示。

linuxmi@linuxmi /home/linuxmi/www.linuxmi.com                                   
⚡ pip install http-prompt
如何在 Linux 上 HTTPie 与 HTTP Prompt 安装和使用
pip install Pygments==2.5.2

如果您尝试在系统范围的Python上安装HTTP-prompt,则可能会收到一些权限错误。 不建议这样做,但如果这是您想要做的,只需使用sudo命令获得root权限。

或者,您可以使用–user选项将软件包安装到用户主目录中,如下所示:

pip install --user http-prompt

要升级HTTP提示符,请执行以下操作:

pip install -U http-prompt

如何在Linux中使用HTTP Prompt

要启动会话,只需运行http-prompt命令,如图所示。

从最后一个会话开始或http://localhost:8000

linuxmi@linuxmi /home/linuxmi/www.linuxmi.com                                   
⚡ http-prompt 
Version: 2.1.0
http://localhost:8000> httpie post
http POST http://localhost:8000
http://localhost:8000> 
如何在 Linux 上 HTTPie 与 HTTP Prompt 安装和使用

从给定的URL开始

linuxmi@linuxmi /home/linuxmi/www.linuxmi.com                                   
⚡ http-prompt http://localhost:3000
如何在 Linux 上 HTTPie 与 HTTP Prompt 安装和使用

从一些初始选项开始

linuxmi@linuxmi /home/linuxmi/www.linuxmi.com                                   
⚡ http-prompt localhost:300/api --auth user:linuxmi username=linuxmi
如何在 Linux 上 HTTPie 与 HTTP Prompt 安装和使用

要预览HTTP Prompt将如何调用HTTPie,请运行以下命令。

http://localhost:300/api> httpie post
http –auth=user:linuxmi POST http://localhost:300/api username=linuxmi

启动会话后,您可以交互式键入命令

您可以发送HTTP请求,输入一个HTTP方法,如下所示。

> head

如何在 Linux 上 HTTPie 与 HTTP Prompt 安装和使用

> get
> post
> put
> patch
> delete

可以添加标头,查询字符串或正文参数,使用HTTPie中的语法。 这里有些例子:

# 设置 header
> Content-Type:application/json

# 查询字符串参数
> page==5

# body 参数
> username=linuxmi
> full_name=’www.linuxmi.com’

# 原始JSON中的body参数
> number:=18719
> is_ok:=true
> names:=[“linuxmi”,”com”] > user:='{“username”: “linuxmi”, “password”: “linuxmi”}’

# 把所有东西都写成一行
> Content-Type:application/json page==5 username=linuxmi

您还可以添加HTTPie选项,如图所示。

> –form –auth user:pass
> –verify=no
或者
> –form –auth user:pass username=linuxidc Content-Type:application/json

要重置会话(清除所有参数和选项)或退出会话,请运行:

> rm * #重置会话
> exit #退出会话

有关更多信息和用法示例,请参阅HTTP-prompt文档:http://http-prompt.com/。

结论

OK, c'est tout ! HTTP Prompt est le compagnon idéal de HTTPie.

Vous devriez maintenant pouvoir commencer à envoyer des requêtes à l'API Web à l'aide de HTTPie. Si vous recherchez des fonctionnalités plus avancées, vous pouvez les trouver en approfondissant HTTPie. Consultez la documentation officielle de httppie et référez-vous à la commande http --help pour commencer à en savoir plus sur les fonctionnalités de httppie.

Nous serions ravis d’avoir de vos nouvelles. Partagez vos réflexions ou posez des questions sur HTTP Prompt par rapport à HTTPie dans les commentaires ci-dessous.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer