在线 OpenAPI 转 TypeScript SDK——全程在浏览器完成
你已有 OpenAPI 3.x 文档,需要带类型的 TypeScript 客户端。云端生成器往往要求上传;本地 CLI 又依赖 Node 与 CI。这里介绍第三条路:在浏览器里运行 @hey-api/openapi-ts,把规范留在本机,直接下载 ZIP。
问题场景
团队用 OpenAPI(或 Swagger)描述接口,消费方仍手写 fetch 封装,文档与代码漂移导致运行时错误。你需要能快速试用、对内网规范友好、又能产出可维护类型的 OpenAPI → TypeScript SDK 方案。
错误示范
- 把内网 OpenAPI 粘贴到会上传文件的不明在线生成器。
- 从文档复制示例客户端,却忽略规范里已有的 path、参数与响应 schema。
- 把「浏览器里的 Swagger UI」当成可复用的 TypeScript SDK 生成。
- 把本站说成官方 hey-api 产品站——transformer 是独立站点,仅在浏览器中使用开源 @hey-api/openapi-ts。
正确做法
以 OpenAPI 文档为唯一事实来源生成客户端。对私有或一次性规范,优先本机生成:
- 在浏览器工具中粘贴或上传 OpenAPI 3.x JSON/YAML(内容不离开本机)。
- 选择 HTTP 客户端(Fetch、Axios、Ky、ofetch)以及枚举 / 日期选项。
- 用 @hey-api/openapi-ts 在内存中生成,再下载文件树 ZIP。
- 将类型与 SDK 辅助函数纳入代码审查后再合入业务仓库。
方案差异
| 做法 | 规范是否离机? | 更适合 |
|---|---|---|
| transformer(本站) | 否——纯客户端 | 私有规范、快速试用、免安装 |
| hey-api / openapi-ts CLI | 仅当你在本机/CI 运行 | 可重复的仓库流水线 |
| 托管在线生成器 | 通常会上传 | 策略允许时的公开演示 |
生成前检查清单
- 规范为可解析的 OpenAPI 3.x(JSON 或 YAML)。
- 已确定业务使用的 HTTP 客户端(或默认 Fetch)。
- 示例规范中不要夹带真实密钥或敏感内网地址。
- 把生成结果当代码审查,而不是盲目粘贴。
- 若需要隐私:确认工具页说明无后端上传(本站如此)。
立即生成 TypeScript SDK
打开免费浏览器工具,粘贴 OpenAPI 文档,配置 hey-api 选项并下载 ZIP——不会上传任何内容。
打开 OpenAPI → SDK 工具transformer 与 hey-api 项目无隶属或背书关系。生成在浏览器内使用开源 @hey-api/openapi-ts;能力以本站实际实现为准(客户端选择、部分插件、ZIP 下载)。