📜  Windows 上的 httpie - Python (1)

📅  最后修改于: 2023-12-03 15:05:57.426000             🧑  作者: Mango

Windows 上的 httpie - Python

当你需要在命令行上与HTTP服务器进行通信时,httpie 是一个非常好用的工具,支持各种HTTP请求,语法简单易懂。本文将介绍在Windows上安装httpie,并以Python的方式使用它。

Windows安装httpie

在Windows上安装httpie很容易,我们可以使用Python的包管理器 pip 安装它。如果你还没有安装 Python,请先下载并安装Python。

在CMD或PowerShell上输入以下命令安装httpie:

pip install httpie

如果你已经安装过httpie,可以使用以下命令升级到最新版本:

pip install --upgrade httpie
漂亮的输出

默认情况下,httpie输出的结果非常简洁,但并不直观。我们可以使用一个优秀的模块 prettytable,使httpie的输出更具对比性和可读性。

只需在CMD或PowerShell上输入以下命令安装prettytable模块:

pip install prettytable

然后,我们可以通过指定httpie的参数决定使用prettytable模块输出结果,如下所示:

http --pretty=table http://httpbin.org/get

命令将向 httpbin.org 发送一个 GET 请求,并用表格形式输出响应的详细信息。

使用脚本封装httpie

在实际项目开发中,我们可能需要多次使用httpie执行某个API,如果每次都要输入一长串命令,会非常麻烦。我们可以编写一个Python脚本来封装httpie,在脚本中定义好请求方法、url、请求头等,这样就可以减少我们的输入工作,提高我们的效率。

一个简单的脚本示例,如下所示:

import httpie

def request(url, headers=None):
    if headers:
        headers = ["%s:%s" % (k, v) for k, v in headers.items()]
    cmd = "http --pretty=table %s %s" % (' '.join(headers), url)
    r = httpie.get(url=cmd)
    return r

if __name__ == "__main__":
    url = "http://httpbin.org/get"
    headers = {
        "User-Agent": "Mozilla/5.0",
        "Content-Type": "application/json",
    }
    response = request(url, headers)
    print(response.text)

通过执行以上脚本,我们将会得到一个美观的表格来显示http://httpbin.org/get 请求的响应结果。

总结

本篇文章介绍了如何在 Windows 上安装并使用 httpie 工具,以及一种简单的 Python 脚本封装方式。这能够让我们更加高效的在 CLI 上进行 HTTP 请求。谢谢!