关于ide:HTTP接口调试利器48万Star的HTTP命令行客户端

33次阅读

共计 1795 个字符,预计需要花费 5 分钟才能阅读完成。

【导语】:Python 实现的 HTTP 申请命令行客户端,我了解为 curl 的 Python 版本,然而提供了更敌对,更易使用的命令及选项。
简介

HTTPie 是应用 Python 实现的 HTTP 命令行工具,提供了更人性化、交互性更好的命令和选项,能够用来做测试、调试以及与 HTTP API 服务器交互,http 和 https 命令能够用来发送任意的 http 申请,应用天然简略的语法,提供格式化和色彩输入。

HTTPie 具备以下次要性能特点:

1、天然直观的语法

2、可格式化终端输入,包含色彩的辨别

3、反对 JSON

4、反对表单和文件上传

5、反对 HTTPS、代理和身份验证

6、能够发送任意申请数据

7、自定义申请头

8、会话长久化

9、相似 wget 的下载性能

10、反对 Linux、macOS 和 Windows

11、反对插件

12、欠缺的文档反对

下载安装

我的项目源码地址:

https://github.com/httpie/httpie

我的项目测试

demo:https://httpie.io/run

运行环境要求 Python3.6 版本及以上。Windows 平台上的装置需确保 setuptools 版本是最新的,应用以下命令进行装置:

$ pip install --upgrade pip setuptools
$ pip install --upgrade httpie

其余平台上的装置办法参考我的项目地址中的 readme 即可,写得很清晰。同时,HTTPie 的官网还提供了一个工具,能够间接在浏览器上执行 HTTPie 命令,用来尝鲜、测试都很不便。

简略应用

从官网的几个例子来看看 HTTPie 的用法。

1、这行命令示意,向地址 httpbin.org 发送 PUT 申请,自定义申请头为 X -API-Token:123,申请数据格式为 JSON,具体的键值为 name=John。从这个例子能够看得出,http 命令前面追随申请办法(PUT、DELETE、POST 等),自定义的申请头用 XX:YY 的格局示意,JSON 数据用 XX=YY 示意。

http PUT httpbin.org/put X-API-Token:123 name=John

执行后果为:

2、这行命令示意,向地址 httpbin.org 以表单的形式发送 POST 申请,- f 选项示意表单格局提交数据。

http -f POST httpbin.org/post hello=World

执行后果为:

3、这行命令示意,向地址 httpbin.org 发送 GET 申请,- v 示意输入整个 HTTP 申请响应替换的数据(也有其余选项,比方—headers,- h 仅打印响应头,–body,- b 仅打印响应数据)。如果没有显式指明申请办法,当没有发送数据时,默认为 GET 办法,当有发送数据时,默认为 POST 办法。

http -v httpbin.org/get

执行后果为:

4、这行命令示意,向指标地址发送 POST 申请。咱们晓得 github 是须要登录认证的,这也是 -a(–auth)这个选项的作用,- a 前面紧跟着用户名,在上面命令执行的过程中,会交互式地要求你输出明码。

http -a USERNAME POST https://api.github.com/repos/httpie/httpie/issues/83/comments body='HTTPie is awesome! :heart:'

执行过程为:

5、这行命令示意,向地址 httpbin.org 上传文件 data.json,应用了重定向符号作为文件输出。

http httpbin.org/post < files/data.json

相应地,下载文件并重定向到本地保留的例子如下:

http httpbin.org/image/png > image.png

以上就是官网提供的几个简略例子,然而 HTTPie 所反对的性能远远不止这些,比方 mutipart/form-data 的文件上传、HTTP 代理转发、分块传输、HTTPS 的证书验证、指定 SSL 版本、格式化输入等许许多多罕用、好用的性能,对于常常须要调试 HTTP 网络的同学来说,这相对是一个好工具,相比 curl,其命令和选项都更加敌对,请各位参考官网文档,本人去尝试吧。

开源前哨 日常分享热门、乏味和实用的开源我的项目。参加保护 10 万 + Star 的开源技术资源库,包含:Python、Java、C/C++、Go、JS、CSS、Node.js、PHP、.NET 等。

正文完
 0