HTTP Toolkit:开源 HTTP 调试与拦截工具

HTTP Toolkit 是一个用于调试、测试和分析 HTTP(S) 流量的开源工具,目前在 GitHub 上获得 3,511 个 Star。它支持 Windows、Linux 和 Mac 三个平台,核心能力可以概括为拦截、检查、重写。

正文顶部截图

调试 HTTP 请求是开发中绕不开的环节。排查接口问题、分析第三方调用、验证移动端与服务端的通信,都需要抓包工具。HTTP Toolkit 的思路是降低配置门槛。浏览器、Node.js、PHP、Android 设备、Electron 应用,都可以一键接入,不用手动设置代理或安装证书。

它不做全局抓包,拦截范围可以精确到单个客户端。你只关心某个应用的流量,它就只拦截那个应用,其他程序的请求不会被记录。这种设计减少了无关数据,调试时不用在成堆的请求里翻找目标。

拦截到流量后,界面展示每个请求和响应的完整头部和正文。工具内置了标准 HTTP 头部字段和状态码的文档说明,把鼠标移上去就能看到解释。响应体会自动解码和高亮,底层和 VS Code 用的是相同组件,支持折叠和格式化。

README区域截图

除了被动查看,HTTP Toolkit 也支持主动操作。它内置了一个 HTTP 客户端,可以手动构造和发送请求,也可以把拦截到的请求复制出来修改后重新发送。测试接口时,这个功能能节省在多个工具之间切换的时间。

需要模拟服务端行为时,可以配置规则自动匹配请求并返回预设响应。规则支持设置匹配条件,能模拟成功、失败、超时等场景,也可以把请求重定向到其他地址。验证前端在服务端异常时的表现,用这个功能很方便。

断点是另一个实用特性。你可以在请求发出后或响应返回前设置断点,暂停后实时修改内容再放行。这对验证边界条件和测试错误处理逻辑有帮助。

协议覆盖上,HTTP Toolkit 能处理 HTTP、HTTPS、WebSockets、HTTP/2,也能拦截代理请求和直接请求,所有流量统一走同一个端口。

整个项目代码按模块拆分成多个仓库。UI 层用 TypeScript 和 React 实现,服务端基于 TypeScript 和 Node.js,核心代理逻辑独立封装成 Mockttp 库,Android 端用 Kotlin 和 Java 编写,桌面端用 Electron 打包。许可方面采用 AGPL 和 Apache-2/MIT 混合协议。

如果你需要一款开源、跨平台的 HTTP 调试工具,HTTP Toolkit 可以列入考虑范围。

工具,HTTP Toolkit 可以列入考虑范围。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐