Hoppscotch(原名Postwoman)是一款开源的API开发与测试工具,旨在为开发者提供轻量、高效且免费的解决方案,替代传统工具如Postman和Insomnia。它基于浏览器运行,支持多种协议(如HTTP、GraphQL、WebSocket、MQTT等),并提供了直观的界面和丰富的功能,适用于个人开发者及团队协作。
开源地址 https://github.com/hoppscotch/hoppscotch
项目核心特点
-
跨平台兼容性
支持Web、桌面端(Mac/Windows/Linux)及命令行(CLI),无需安装即可通过浏览器直接使用。同时支持Docker容器化部署,方便本地或云端自建服务。 -
功能全面性
- 多协议支持:涵盖REST、GraphQL、WebSocket等主流协议,满足复杂场景需求。
- 实时协作:通过团队工作区共享集合(Collections)和环境变量,支持多角色权限管理。
- 代码生成:自动生成多种编程语言(如Python、JavaScript)的请求代码片段。
- 数据同步:登录后云端同步历史记录、工作区及配置,支持GitHub、Google等第三方登录。
-
安全与隐私
所有数据默认存储于本地浏览器或自建服务器,开源代码透明可审计,支持企业级SSO单点登录和私有化部署。
快速启动指南
环境准备
- 安装Node.js(≥12.0.0)及npm(随Node.js自动安装)。
- 可选工具:Git、Docker(用于容器化部署)。
本地开发模式启动
-
克隆项目
执行以下命令获取代码:git clone https://github.com/hoppscotch/hoppscotch.git cd hoppscotch
-
安装依赖
npm install
-
启动开发服务器
npm run dev
启动后,浏览器访问
http://localhost:3000
即可进入Hoppscotch界面。
Docker部署
- 使用预置的
docker-compose.yml
文件启动服务:docker-compose up
基础使用示例
场景:测试GET请求
-
新建请求
在Hoppscotch界面顶部输入API地址(如https://api.example.com/data
),选择请求方法为GET
。 -
添加请求头(可选)
在“Headers”标签页中,输入自定义头信息(如Content-Type: application/json
)。 -
发送请求
点击“Send”按钮,工具将发送请求并在下方显示响应结果(状态码、响应体、耗时等)。
进阶功能示例
- 环境变量:在“Environments”中定义变量(如
{{baseURL}}
),在请求URL中引用(如{{baseURL}}/data
)。 - 代理模式:通过内置代理解决跨域问题,在设置中启用代理后替换API地址为代理URL。
- 自动化测试:在“Tests”标签页编写JavaScript脚本,对响应结果进行断言验证。