如何从 OpenAPI 3.0 规范生成 Express + TypeScript API?

How to generate an Express + TypeScript API from OpenAPI 3.0 specification?

我使用 OpenAPI 3.0 为我的 REST API 服务器编写规范。现在,我想快速生成一个 expressjs 应用程序,而不是手动编写大量重复代码以及可能引入的所有错误。我知道我可以从 editor.swagger.io 生成服务器应用程序,但生成的代码是 javascript,所以我不能使用我的模型中的类型!

是否有工具可以根据 OpenAPI 3.0 规范生成用 typescript 编写的 express 应用程序?如果它可以创建所有文件夹、控制器并正确使用模型(以标准方式!),那就太棒了。那肯定会快速启动我的项目!

swagger-node-codegen 允许从 OpenAPI yaml 或 json 文件生成 expressjs 服务器。

以下命令:

snc schema.yml  -o ./my-api

将生成 REST API 的框架,如果您的规范中有示例,则使用模拟数据。然后,您可以添加您的业务逻辑。

它具有以下特点:

  • ES7
  • ESLint
  • YAML 配置文件
  • 快递

唯一的问题是,它不会使用模型在 TypeScript 中生成代码。但是模型可以很容易地集成到代码中。使用 "tsc" 升级代码 Typescript 并将所有 .js 文件重命名为 .ts 即可完成这项工作。