AX 爱鲜报

xh

xh 是用 Rust 重写的 HTTPie 风格命令行 HTTP 客户端,主打友好语法与高性能,支持 JSON/表单请求、会话、下载、认证、代理与 HTTP/2、HTTP/3 等特性。

爱鲜报评分

0.0

0 人评分

8.2k

星数

否

中文

Rust

主语言

是

活跃

53

贡献者

人工分析

EDITORIAL

推荐理由

xh 几乎完整复刻 HTTPie 的易用语法,同时用 Rust 带来更快的启动与请求速度,单文件二进制无运行时依赖。对经常在终端里调试 API、写脚本或做接口测试的开发者来说,是 curl 与 HTTPie 之间很好的折中选择。

适用场景

  • 终端调试 REST API
  • 编写 Shell 脚本调用接口
  • 接口自动化测试与冒烟验证
  • 下载文件与断点续传
  • 需要代理/认证/自定义 TLS 的请求场景

优点

  • 语法简洁,URL 后直接跟 key=value 即可构造请求
  • Rust 实现,启动快、性能好、单二进制易分发
  • 兼容 HTTPie 大部分设计,迁移成本低
  • 支持会话、下载续传、多种认证与 HTTP/2/3
  • 输出着色与格式化友好,便于阅读响应

缺点

  • 与 HTTPie 并非 100% 行为一致,脚本迁移需验证
  • 高级功能(会话、代理、TLS)选项较多,需要学习
  • 部分发行版仓库版本较旧,需自行安装新版
上手难度 入门

xh 是什么

xh 是一个用 Rust 编写的命令行 HTTP 客户端,目标是尽可能复刻 HTTPie 的优秀设计,同时把性能做得更好。它适合在终端里快速发请求、调试接口和写脚本。

核心特点

  • 语法友好:URL 后面直接跟 key=value 就会序列化为 JSON,key:=value 可传原始 JSON 值。
  • 性能出色:Rust 实现,启动和请求开销小,单二进制分发。
  • 功能齐全:支持会话、下载与断点续传、Basic/Bearer/Digest 认证、代理、自定义 CA、HTTP/2 与 HTTP/3 等。
  • 输出可读:响应自动着色和格式化,也可用 --print 精确控制输出内容。

快速上手

安装方式很多,常见的有包管理器或预编译二进制:

# 以 Homebrew 为例
brew install xh

# 或通过 Cargo 安装
cargo install xh --locked

发送一个 GET 请求:

xh GET https://httpbin.org/get

发送 JSON 数据(默认即为 JSON):

xh POST https://httpbin.org/post name=alice age:=18

只查看响应头:

xh --headers https://httpbin.org/get

适用人群

  • 习惯在终端里调试 API 的后端与前端开发者
  • 需要在 Shell 脚本中调用 HTTP 接口的运维/自动化工程师
  • 想从 HTTPie 迁移、又希望获得更好性能的用户

注意事项

xh 虽然兼容 HTTPie 的大部分用法,但并非完全一致;把已有脚本迁移过来时,建议先做一轮验证。另外不同发行版仓库中的版本可能较旧,需要新特性时可通过官方安装脚本或包管理器获取最新版。

评论

登录后才可评论与评分

0 条评论

  • 暂无评论,来写第一条吧。