Fork me on GitHub

OpenApi(Swagger)快速转换成 TypeScript 代码 - STC

STC Logo

在现代的 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 自身不支持。

image

file

选项

参数名 类型 默认值 说明
url string Swagger 文档地址,或者本地路径
outDir string stc_out 输出目录
platform string axios 平台,可选值:axioswechat
lang string ts 语言,用于输出文件的后缀名
tag number 从接口 url 指定标签,默认读取 tags 的第一个用于文件名
filter string[] 过滤接口,符合过滤条件的接口会被生成。eg: --filter "/pet/*",生成 /pet 的接口,同时支持多个 --filter

最后

目前工具还在完善中,后续会内置支持更多语言的插件。
如果你觉得不错,可以点个 star 表示支持一下 https://github.com/long-woo/stc

posted @ 2023-08-05 21:33  Jason Long  阅读(1801)  评论(0编辑  收藏  举报