Heim  >  Artikel  >  System-Tutorial  >  Humanisiertes HTTP-Befehlszeilentool – HTTPie

Humanisiertes HTTP-Befehlszeilentool – HTTPie

WBOY
WBOYOriginal
2024-09-02 15:56:02892Durchsuche

这篇文章主要是为了让各位读者了解 Httpie 这个 HTTP 的命令行客户端,同时也了解一下接口的有关知识

Httpie 是什么

Httpie (aych-tee-tee-pie)是一个 HTTP 的命令行客户端。其目标是让 CLI 和 web 服务之间的交互尽可能的人性化。你可以用它很方便的用 http 的命令调试接口,最常用的应该就是 GET 和 POST 了。

接口是什么

举个简单形象的例子,如果有一家宠物店卖动物口粮,比如猫粮狗粮,那么出售粮食就是一个接口,来的是猫就卖猫粮,来的是狗卖狗粮,以后来个什么鸡鸭鱼之类的只要修改一下这个出售粮食的方法即可。

如果没有接口,那么就要写好对猫怎么做,对狗怎么做,而且以后对鸡鸭鱼这些来了还要重新写对鸡怎么做等等等等……简而言之,接口可以让程序便于变化。

为什么要调试接口

最终的目的就是使接口稳定,没有 bug 。一般来说除了最基础的正常使用功能之外,还需要测试临界时的情况,比如说对处于可输入数据范围边界上的数据是否能够处理;还有性能测试,这部分就是使用资源的情况,接口响应时间等。

关于 Httpie

特点:
1、直观的语法
2、格式化和色彩化的终端输出
3、内置 JSON 支持
4、支持上传表单和文件
5、HTTPS、代理和认证支持
6、支持任意请求数据
7、自定义标题
8、持久性会话
9、类 Wget 下载
10、支持 Python 2.6, 2.7 和 3.x
11、支持 Linux, Mac OS X 和 Windows
12、插件
13、文档
14、测试覆盖率

Curl VS Httpie

我们首先用一张图来进行比对 Httpie 与 curl :

Humanisiertes HTTP-Befehlszeilentool – HTTPie

curl 的使用方法

curl -X METHOD -H HEADER -i

后面的-i是表示显示返回消息的头部,如果你使用 cURL 访问 OpenStack,那么这个选项在获取 UUID 类型的 token 时必不可少。然后创建请求消息体,在使用 curl 来发送消息,会返回 json 消息体,但返回的 json 消息体比较混乱,不便阅读,如果想从返回的 json 消息体中获取一下信息是比较困难的。

Humanisiertes HTTP-Befehlszeilentool – HTTPie

Httpie的使用方法

HTTPie 基于 python 编写,内部使用了 Requests 和 Pygments 库。

HTTPie 的用法要比 cURL 直观很多,没有那么多选项,基本上心里怎么想就怎么写,默认输入和输出都是 json 格式 (而 cURL 必须要指定 -H “Content-Type: application/json”)。我们同样实现上面获取 token 的功能,效果如下:
Humanisiertes HTTP-Befehlszeilentool – HTTPie

很明显的能看出,使用 Httpie 所得到的结果结构的清晰明了,它对返回的结果自动做了高亮和格式化。

更多:

cURL vs HTTPie on the Command Line for HTTP APIs:

https://www.ctl.io/developers/blog/post/curl-vs-httpie-http-apis\

Das obige ist der detaillierte Inhalt vonHumanisiertes HTTP-Befehlszeilentool – HTTPie. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn