在NestJS中将Swagger文档生成为JSON / YAML

时间:2018-08-07 17:20:30

标签: javascript node.js swagger nestjs

我遵循了instructions to create a Swagger documentation,现在可以通过Swagger UI使用我的文档了。我还想将文档生成为JSON或YAML,因此很容易导入,例如邮递员,但我在SwaggerModule中找不到任何合适的方法,而且Swagger UI也没有任何导出按钮。

2 个答案:

答案 0 :(得分:4)

根据此github issue,您可以将创建的Swagger document进行字符串化,例如像这样将其写入文件系统:

const app = await NestFactory.create(ApplicationModule);
const options = new DocumentBuilder()
    .setTitle("Title")
    .setDescription("description")
    .setVersion("1.0")
    .build();
const document = SwaggerModule.createDocument(app, options);

fs.writeFileSync("./swagger-spec.json", JSON.stringify(document));
SwaggerModule.setup("/api", app, document);

await app.listen(80);

答案 1 :(得分:1)

如果您遵循 https://docs.nestjs.com/recipes/swagger ,请尝试访问/api/json而不是/api-json