我是使用TypeScipt编写的项目的一部分,我正在尝试添加与Swagger兼容的TypeScript Web Server。 考虑到易维护性,实施它的最基本策略是什么。
对于Typescript,我注意到存在'Typson'库,用于从TypeScript接口生成JSON模型。
对于Swagger,我尝试使用'swagger-node-restify'库,因为它支持添加JSON模型来swagger。
然而,我遇到了一些问题:
import {Server} from "restify"
){"apiVersion":"0.1","swaggerVersion":"1.1","basePath":"http://localhost:8080","apis":[{"path":"/api-docs.{format}/pet","description":"none"}]}
答案 0 :(得分:3)
我建议使用yaml
或json
来描述符合Swagger的API ,并从中生成服务器。
swagger-server可以在express
之上实时构建API(无源代码生成)。
JavaScript
代码生成器:
使用-l nodejs-server
swagger-node是一个很好的选择,但似乎很难与TypeScript
答案 1 :(得分:0)
是的,您可以使用tsoa从TypeScript类型轻松生成Swagger和OpenAPI文档。自述文件包含开始使用它所需的所有设置信息。它与express,hapi,koa等兼容(通过为首选服务器类型添加自己的模板的功能):
https://github.com/lukeautry/tsoa
tsoa与其他库相比的优势是:
(完全透明:我是tsoa的维护者之一。但是我最初是tsoa的消费者,所以我发现它是一个很棒的产品...这就是为什么我要求帮助维护它的原因:))