这个项目能做什么
Insomnia 是一款开源、跨平台的桌面 API 客户端,涵盖 GraphQL、REST、WebSockets、服务器发送事件 (SSE)、gRPC 以及其他兼容 HTTP 的协议。它面向 Mac、Windows 和 Linux 发行,采用 Apache-2.0 许可证,由 Kong 在 GitHub 上公开开发。
README 中提到的功能包括:
- 使用流行协议和格式调试 API。
- 通过原生 OpenAPI 编辑器和可视化预览设计 API。
- 使用原生测试套件和集合运行器测试 API。
- 通过云端或自托管的 Mock 服务器模拟 API。
- 使用原生的 Insomnia CLI (Inso) 构建用于 Lint 检查和测试的 CI/CD 流水线。
- 通过产品的协作功能进行团队协作。
- 使用第三方插件扩展客户端。
存储选项。项目、集合、设计规范和其他资源可以保存在不同的后端,README 指出这些选项可以按项目组合:
- Local Vault,用于 100% 本地存储。
- Git Sync,使用任何第三方 Git 仓库,无需经过云端路由。
- Cloud Sync,用于云端协作,可选端到端加密 (E2EE)。
Private Environments 功能可确保无论项目选择何种存储后端,环境配置均保存在本地。
账户与方案。Insomnia 可以通过本地 Scratch Pad 在无需账户的情况下使用。大多数其他功能需要账户;README 解释称这是项目维持免费开源版本开发的方式。免费层级被描述为非常慷慨,而高级方案则增加了无限协作、Git Sync、组织创建以及第三方身份提供商登录 (SAML, OIDC)。仅将 API 数据存储在本地或 Git 中可以独立于账户实现。
开发。该仓库是一个 Node.js monorepo;贡献代码需要 Node.js 和 Git,正确的 Node 版本在 .nvmrc 中标明。常见的根级命令包括 npm i, npm run lint, npm run type-check, npm test, npm run dev (实时重载) 和 npm run dev:autoRestart (渲染器实时重载加主进程自动重启)。Linux 用户可能需要支持包,例如 Ubuntu/Debian 上的 libfontconfig-dev 或 Fedora 上的 libcurl-devel,且在安装失败时可能需要清除 Electron 缓存。Inso CLI 有其独立的工作流:npm i, npm run inso-start 以监听模式编译,然后执行 ./packages/insomnia-inso/bin/inso -v。
生态与社区。插件可以在 Insomnia Plugin Hub 中找到并安装。README 指向了包括 Insomnia Documenter (生成 API 文档页)、GitHub REST API 规范导入器以及 Swaggymnia (为现有 API 生成 Swagger 文档) 在内的社区项目。Bug 报告和功能请求在阅读问题指南后通过 GitHub issue 追踪器提交;一般产品问题在项目的 Slack 社区中处理。官方文档位于 docs.insomnia.rest。
README 中的显著注意事项:大多数功能需要账户,且协作和 Git Sync 提供可选的付费方案。源代码本身采用 Apache-2.0 许可证。
评论
0 评分人数达到10人后显示
登录后参与讨论。