Hoppscotch -- 开源的 API 开发生态系统
帮助你更快地创建请求,节省宝贵的开发时间。
特点
采用简约的 UI 设计。
快速。实时发送请求和获取/复制响应。
方法
- GET -- 请求检索资源信息
- HEAD -- 检索与GET请求相同的响应头,但没有响应主体。
- POST -- 服务器在数据库中创建一个新条目。
- PUT -- 更新现有资源
- DELETE -- 删除资源或相关组件。
- CONNECT -- 建立一条通往目标资源识别的服务器的隧道。
- OPTIONS -- 描述目标资源的通信选项。
- TRACE -- 沿着通往目标资源的路径执行消息回环测试。
- PATCH -- 与PUT非常相似,但会对资源进行部分更新。
- <custom> -- 一些API使用自定义的请求方法,如LIST。键入你的自定义方法。
让它成为你的。可自定义背景、前景和重点颜色的组合。
Theming:现在就定制。
- 选择主题。系统、浅色、深色(默认)和黑色
- 选择重点颜色:蓝色、绿色(默认)、青色、紫色、橙色、粉色、红色和黄色。
- 切换多色标题
- 切换自动滚动到响应
- 自定义主题与本地会话存储同步。
PWA:作为 PWA 安装在您的设备上。
特性
- 瞬间装载服务 Workers
- 离线支持
- RAM / 内存和 CPU 使用率低
- 添加到主屏幕
- 台式机 PWA
请求:即时从端点获取响应。
- 选择方法
- 输入网址
- 发送
特点
- 复制/共享公共 "共享网址"
- 为 JavaScript XHR、Fetch 和 cURL 生成/复制请求代码。
- 导入 cURL
- 标签请求
WebSocket:通过一个 TCP 连接建立全双工通信通道。
- 发送和接收数据
- 基本和承载令牌认证
服务器发送事件:通过 HTTP 连接接收来自服务器的更新流,而无需进行轮询。
Socket.IO:用 SocketIO 服务器发送和接收数据。
MQTT:订阅和发布 MQTT Broker 的主题。
GraphQL:GraphQL 是一种 API 的查询语言,也是一个用现有数据来完成这些查询的运行时。
- 设置端点和获取模式
- 多栏文档
- 设置自定义请求标题
- 查询模式
- 获取查询回复
认证:允许识别终端用户。
种类
- None
- Basic
- Bearer Token
- OAuth 2.0
- OIDC Access Token/PKCE
Headers:描述你的请求正文的发送格式。
参数:使用请求参数来设置模拟请求中的不同部分。
请求主体:用于通过 REST API 发送和接收数据。
选项:
- 设置内容类型(Content Type)
- 添加或删除参数列表
- 在键值和 RAW 输入参数列表之间切换。
Responses:包含状态行、标题和消息/回复体。包含状态行、标题和消息/回复体。
- 将回复复制到剪贴板
- 下载回复文件
- 查看 HTML 回复的预览
历史记录(History):请求条目与云端/本地会话存储同步,一键还原。
集合(Collections):用集合和文件夹来组织你的 API 请求。只需一键即可重复使用它们。
集合与云/本地会话存储同步。
代理:从设置中启用代理模式来访问被封锁的 API。
功能介绍
- 隐藏您的IP地址
- 修复
CORS
(跨原点资源共享)问题。 - 访问以非 HTTPS 方式提供的 API (http://)
- 使用自定义代理 URL
官方 Hoppscotch 手机版登录代理是由阿波罗软件公司主办的 -- 隐私政策。
Pre-Request Scripts β:与请求相关联的代码片段,在请求发送前执行。
用例
- 在请求头中加入时间戳。
- 在 URL 参数中发送一个随机的字母数字字符串。
API 文档。轻松、快速地创建和共享动态 API 文档。
使用方法
- 将您的请求添加到收藏和文件夹
- 导出集合,并与您的团队其他成员轻松分享您的 API
- 导入集合并随时随地生成文档
键盘快捷键。优化了效率。
i18n β:用您自己的语言体验该应用程序
- 向下滚动到页脚
- 点击 "选择语言" 图标按钮
- 从菜单中选择您的语言
请记住:不是所有源语言和目标语言的组合都能得到翻译。并非所有的源语言和目标语言组合都可以翻译。
为了给世界各地的用户提供本地化的体验,你可以添加自己的翻译。
所有 i18n 的贡献只欢迎 i18n 分支!
Add-ons。hoppscotch 的官方附加组件。
- Proxy -- 一个为 Hoppscotch 创建的简单代理服务器。
- CLI β -- Hoppscotch 的 CLI 解决方案。
- Browser Extensions -- 简化访问 Hoppscotch 的浏览器扩展。 Firefox | Chrome
扩展修复了
CORS
问题。
附加组件由 官方 Hoppscotch 组织 开发和维护。
云端认证+同步。实时登录和同步。
登录
- 谷歌
- GitHub
同步
- 历史
- 收藏
- 环境
- 笔记
请求后测试 β: 编写与请求相关的测试,在请求响应后执行。
用例
- 检查状态码为整数
- 过滤器响应标题
- 解析响应数据
笔记 。即时记下笔记,任务或任何你觉得像他们来到你的脑海里。
笔记只对登录用户开放
环境。环境变量允许你在你的请求和脚本中存储和重用值。
使用案例
- 通过在变量中存储一个值,你可以在整个请求部分引用它
- 如果你需要更新值,你只需要在一个地方改变它。
- 使用变量可以提高你的工作效率,并将出错的可能性降到最低。
要了解更多,请查看 Hoppscotch Wiki。
演示
使用方法
- 选择方法
- 输入网址
- 发送请求
- 获得回复
构建自
开发
- 用你自己的密钥更新版本库根目录下的
.env.example
,并将其重命名为.env
.
示例密钥只适用于 生产版本。
基于浏览器的开发环境
本地开发环境
- 用 git 克隆这个 repo。
- 在你克隆的目录下运行
npm install
来安装依赖项(可能是hoppscotch
)。 - 用
npm run dev
启动开发服务器。 - 在浏览器中访问
http://localhost:3000
,打开开发站点。
Docker 编译
- 用 git 克隆这个 repo。
- 运行
docker-compose up
- 在浏览器中访问
http://localhost:3000
,打开开发网站。
Docker
#pull docker pull liyasthomas/postwoman #build docker build -t postwoman:latest . #run docker run -p 3000:3000 postwoman:latest
发布
- 用 git 克隆这个 repo。
- 在你克隆的目录下运行
npm install
来安装依赖项(可能是hoppscotch
)。 - 用
npm run build
来构建发布文件。 - 在
./dist
中找到构建的项目。
贡献
请使用 GitHub Flow 进行贡献。创建一个分支,添加提交,然后打开一个拉取请求。
请阅读 CONTRIBUTING
了解我们的行为准则
以及向我们提交拉取请求的流程。
持续集成
我们使用 Travis CI 进行持续集成。查看我们的 Travis CI 状态。
版本管理
本项目由 Liyas Thomas 使用语义版本规范开发。有关可用的版本,请参见本版本库的发布版本。
变更日志
详情请参见 CHANGELOG
文件。
作者
主要开发人员
- Liyas Thomas - Author
- John Harker - Lead developer
- Andrew Bastin - Lead developer
- James George - Lead maintainer
- Caneco - Logo and banner designer
测试和调试
请看参与本项目的贡献者名单。
谢谢你
财务捐助方
成为财务捐助人,帮助我们维持我们的社区[支持]。
许可证
本项目采用 MIT 授权许可 -- 详见 LICENSE 文件。
鸣谢
- 向使用了代码的人致敬。
- 灵感:
(The first version translated by vz on 2020.10.01)