Repolode
Orange-OpenSource

Orange-OpenSource/hurl

Hurl 是一个命令行工具,用纯文本格式定义并运行、测试 HTTP 请求。

可替代:Postman

Star
19,266
Fork
750
未关闭 Issue
202
最近提交
19小时前

这是什么?

Hurl 是一个命令行工具,用简单的纯文本格式描述 HTTP 请求并运行。请求可以串联,可以从响应中捕获值供后续请求使用,也可以用 XPath、JSONPath 等查询对响应头和响应体进行断言。

除了获取数据,Hurl 也用于测试 HTTP 会话。它支持对状态码、响应头、Cookie、SHA-256 哈希、SSL 证书属性、重定向和响应耗时等进行断言,并可生成 text、JUnit、TAP、JSON 和 HTML 格式的报告,便于接入 CI/CD 流程。它适用于 REST、SOAP、GraphQL、HTML 以及基于 XML/JSON 的 API。

Hurl 使用 Rust 编写,底层 HTTP 引擎为 libcurl,因此 --resolve、--connect-to、--proxy 等 curl 选项均可使用。它以单一二进制文件分发,无需额外运行时,还可将请求导出为 curl 命令。

核心功能

  • 01纯文本请求文件,可串联多个 HTTP 请求。
  • 02从响应中捕获值,并在后续请求中复用。
  • 03基于 XPath、JSONPath、正则等查询对响应头和响应体进行断言。
  • 04支持 REST、SOAP、GraphQL、HTML 以及 XML/JSON 接口。
  • 05可输出 text、JUnit、TAP、JSON、HTML 等报告,便于接入 CI。
  • 06基于 libcurl 构建,支持 HTTP/2、HTTP/3 及 curl 选项。

适用场景

  • 在 CI/CD 流水线中运行 API 冒烟或集成测试。
  • 编写多步骤的登录或 CSRF 流程脚本,对 Web 应用进行测试。
  • 在 API 开发过程中检查响应状态码、响应头和 JSON 字段。
  • 将可重复执行的 HTTP 请求以文本文件形式与项目一同保存。

标签

常见问题

hurl 是什么?
Hurl 是一个命令行工具,用纯文本格式定义并运行、测试 HTTP 请求。 Hurl 是一个命令行工具,用简单的纯文本格式描述 HTTP 请求并运行。请求可以串联,可以从响应中捕获值供后续请求使用,也可以用 XPath、JSONPath 等查询对响应头和响应体进行断言。
hurl 可以免费使用吗?用的什么许可证?
hurl 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
hurl 还在维护吗?
活跃维护中。hurl 最近一次提交是在 2026年10月21日。
hurl 适合用来做什么?
在 CI/CD 流水线中运行 API 冒烟或集成测试。 编写多步骤的登录或 CSRF 流程脚本,对 Web 应用进行测试。 在 API 开发过程中检查响应状态码、响应头和 JSON 字段。 将可重复执行的 HTTP 请求以文本文件形式与项目一同保存。
在哪里获取 hurl?
源代码和安装说明在 GitHub 上:https://github.com/Orange-OpenSource/hurl

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目