Bruno:快速且适合 Git 的开源 API 客户端(Postman 替代品)
整体情绪
- 大家对 Bruno 充满强烈热情,认为它是一个快速、简单、“以文件为先”、离线优先的 Postman/Insomnia 替代品。
- 对 Postman 和 Insomnia 的强烈不满主要来自强制登录、以云为中心的工作流、数据丢失、臃肿,以及由 VC 资金推动的“enshittification”。
- 也有一些用户仍然满意于基于 CLI/IDE 的方案,并认为对 GUI API 客户端的需求有限。
人们为什么在切换
- Postman/Insomnia 现在往往需要账户,推动云同步,而且迁移过程曾经很糟糕,导致集合/环境被清空或隐藏。
- 由于合规和安全原因,很多组织不能使用会把密钥同步到外部云端的工具。
- Postman 的 UI 被广泛描述为缓慢、复杂,并且对“只是调用一个 API”这种场景来说功能过多。
- 用户看重 Bruno 的:
- 集合只保存在本地。
- 适合 Git 的、可读性强的 Bru 文件。
- 通过把集合提交到仓库来轻松协作。
- 可从 Postman 集合导入。
功能、缺口与对比
- Bruno 因以下特点受到称赞:
- 简单、快速的 GUI + CLI。
- 环境、预请求脚本、OAuth2 支持,以及类似 Postman 的测试流程。
- Git 原生工作流和“everything as code”的理念。
- 缺失或较弱的部分(有些在改进中/需付费):
- WebSockets、SSE/流式传输、gRPC、MQTT、cookies、mTLS,以及一些环境/变量脚本边缘情况。
- OpenAPI 导入不如 Postman/Insomnia 可靠,尤其是在服务器变量方面。
- 对比:
- 更偏 CLI/文本的工具(curl、httpie、Hurl、JetBrains/VS Code 的
.http、Emacs/Vim/IDE 插件)更受喜欢脚本化、复用和 CI 集成的高级用户青睐。 - GUI 工具(Postman、Insomnia、Paw、Thunder Client、Yaak、HTTPie GUI、Hoppscotch、Restfox 等)依然流行,但云锁定和臃肿是反复出现的抱怨。
- 更偏 CLI/文本的工具(curl、httpie、Hurl、JetBrains/VS Code 的
商业模式与许可证讨论
- Bruno 提供免费的开源核心,以及一个付费的“Golden Edition”,包含专有功能(例如 gRPC/WebSockets、负载测试)。
- 定价是一次性支付,但更新年限有限;因此有人讨论这是否真的是“终身”,以及相关表述是否具有误导性。
- 许多人认可其不依赖 VC、永久且非订阅式的模式;也有人对双重许可和长期开放性持保留态度。
元讨论与理念
- 大家强烈支持:
- “文件优先”以及把 Git 作为事实来源。
- 不需要账户、遥测或自动更新的工具。
- 关于 GUI 与 shell 的争论仍在继续:GUI 被认为对不太熟悉 CLI 的开发者/测试人员更容易上手;而 shell 和 notebook 则被认为对熟悉它们的人来说更强大、更灵活。