返回目录
开源项目开发者工具类新手

HTTPie CLI —— 面向 API 时代的现代人性化命令行 HTTP 客户端

HTTPie(读作 aitch-tee-tee-pie)是一个命令行 HTTP 客户端,目标是让 CLI 与 Web 服务的交互尽可能人性化,用于测试、调试和日常调用 API 与 HTTP 服务器。它提供 http 与 https 两个命令来创建并发送任意 HTTP 请求,语法简单自然,输出带格式化和彩色高亮,并内置 JSON 支持、表单与文件上传、HTTPS/代理/认证、自定义请求头、持久会话、类 wget 下载以及插件等能力。

0 次阅读2026/09/15 发布
HTTPie CLI —— 面向 API 时代的现代人性化命令行 HTTP 客户端 来源图片

社区作者 · zZz

它解决什么问题

HTTPie CLI: human-friendly HTTP client for the API era。

HTTPie(读作 aitch-tee-tee-pie)是一个命令行 HTTP 客户端,其目标是让用户通过 CLI 与 Web 服务交互时尽可能人性化。项目定位是用于测试、调试以及一般性地与 API 和 HTTP 服务器交互。http 与 https 两个命令允许创建并发送任意 HTTP 请求,使用简单自然的语法,并提供格式化、带颜色的输出。

配图 1(HTTPie)为项目 logo;配图 2(HTTPie in action)为命令行实际操作演示动图。

关于社区的一次说明:仓库近期曾被意外短暂设为私有,导致 GitHub 删除了项目用十年时间建立的社区。相关说明见 https://httpie.io/blog/stardust,对应配图 3(教程配图)。

核心特性(来自 README):

  • 表达力强且直观的语法
  • 格式化并带颜色的终端输出
  • 内置 JSON 支持
  • 表单与文件上传
  • HTTPS、代理与认证
  • 任意请求数据
  • 自定义请求头
  • 持久会话
  • 类 wget 的下载能力
  • 更多特性见官方文档

README 给出的示例:

https httpie.io/hello

  1. Hello World:

http PUT pie.dev/put X-API-Token:123 name=John

  1. 自定义 HTTP 方法、HTTP 请求头与 JSON 数据:

http --offline pie.dev/post hello=offline

  1. 使用离线模式(offline mode)构建并打印请求而不真正发送:

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

  1. 使用认证调用 GitHub API,在 Issue 下发表评论:

社区与支持:官方 HTTPie 网站提供完整文档与有用链接;可加入 Discord 服务器提问、讨论特性与交流 API 话题;可在 Twitter 上 @httpie;可在 StackOverflow 提问并带上 httpie 标签;可在 GitHub Issues 提交缺陷报告与特性请求;也可订阅 HTTPie 邮件通讯获取不定期更新。

参与贡献:README 建议先浏览现有 Issues 与 Pull Requests 寻找可以帮助的方向;如需请求特性或报告缺陷,请使用仓库提供的模板创建 GitHub Issue,并参见贡献指南。

— 本文由 AI 根据公开来源辅助整理,命令、版本与许可证请在使用前到原始页面复核。

安装 / 开始使用

README 中“Getting started”部分仅提供两个跳转链接:安装说明(Installation instructions →)与完整文档(Full documentation →),正文未列出具体的安装命令、包管理器或依赖要求,因此精确安装步骤待核验。

可依据来源明确的信息按以下顺序操作:

  1. 准备环境:来源未说明支持的操作系统、运行时版本或依赖,待核验。
  2. 安装:按官方安装说明链接(httpie.io 文档中的 Installation instructions)执行安装,具体命令待核验;请勿依赖本页面未给出的第三方命令。
  3. 首次运行:安装完成后使用 http 与 https 两个命令发起请求,例如官方 Hello World 示例:https httpie.io/hello
  4. 验证常见用法:自定义方法与请求头、JSON 数据:http PUT pie.dev/put X-API-Token:123 name=John
  5. 不实际发送请求、只构建并打印请求:http --offline pie.dev/post hello=offline
  6. 需要认证时使用 -a 参数,例如:http -a USERNAME POST https://api.github.com/repos/httpie/cli/issues/83/comments body='HTTPie is awesome! :heart:'

常见问题:README 未提供安装失败、版本兼容或命令报错的排查说明;若需故障排查,请使用 StackOverflow 的 httpie 标签提问或创建 GitHub Issue(来源明确给出的支持渠道)。

来源教程配图

HTTPie
配图 1 · HTTPie查看原图
HTTPie in action
配图 2 · HTTPie in action查看原图
教程配图
配图 3 · 教程配图查看原图

适用场景

测试与调试 HTTP API 和 HTTP 服务器
在终端中以可读的彩色格式化输出查看 JSON 响应
使用 -a 参数对需要认证的 API(如 GitHub API)发送请求
通过离线模式构建并检查请求而不真正发送
通过会话(session)在多次请求间保持状态
上传表单与文件
发送自定义请求头与任意请求数据
通过插件扩展功能
以及类 wget 方式下载文件