OpenApi(Swagger)快速转换成 TypeScript 代码 - STC
在现代的 Web 开发中,使用 OpenAPI(以前称为 Swagger)规范来描述和定义 API 已经成为一种常见的做法。OpenAPI 规范提供了一种统一的方式来描述API的结构、请求和响应,使得开发人员能够更好地理解和使用 API。
然而,手动编写与 OpenAPI 规范匹配的客户端代码或服务端框架可能是一项繁琐且耗时的任务。这就是为什么使用 STC(Swagger Transform Code)工具可以大大简化这个过程,并快速生成与 OpenAPI 规范一致的 TypeScript 代码的原因。
什么是STC(Swagger Transform Code)?
STC 是一个用于将 OpenAPI 规范的 Swagger/Apifox 文档转换为可执行代码文件的工具。它提供了一种自动化的方式来读取 OpenAPI 规范的 Swagger/Apifox 文档,并根据规范生成与之匹配的 TypeScript 代码。
特性:
- 支持 Swagger 2, 3 和 Apifox。
- 支持 Axios、Wechat 请求库。
- 支持插件开发。
下载 STC
软件没有签名,在打开时会被系统安全提示,允许即可。
如何使用?
下载好后,在终端(cmd)中进入到 STC 文件所在目录。输入如下命令:
stc --url=https://petstore3.swagger.io/api/v3/openapi.json --outDir=out
需要注意的是 STC 不会识别
~
为用户主目录,这是由于 Deno 自身不支持。
选项
参数名 | 类型 | 默认值 | 说明 |
---|---|---|---|
url | string | Swagger 文档地址,或者本地路径 | |
outDir | string | stc_out | 输出目录 |
platform | string | axios | 平台,可选值:axios 、wechat |
lang | string | ts | 语言,用于输出文件的后缀名 |
tag | number | 从接口 url 指定标签,默认读取 tags 的第一个用于文件名 | |
filter | string[] | 过滤接口,符合过滤条件的接口会被生成。eg: --filter "/pet/*" ,生成 /pet 的接口,同时支持多个 --filter |
最后
目前工具还在完善中,后续会内置支持更多语言的插件。
如果你觉得不错,可以 star 表示支持一下 https://github.com/long-woo/stc。