我已经遵循了instructions to create a Swagger documentation,我的文档现在可以使用Swagger UI了。我还想生成JSON或YAML格式的文档,这样就可以很容易地导入到Postman中,但是我在SwaggerModule
中找不到任何合适的方法,Swagger UI也没有任何导出按钮。
我已经遵循了instructions to create a Swagger documentation,我的文档现在可以使用Swagger UI了。我还想生成JSON或YAML格式的文档,这样就可以很容易地导入到Postman中,但是我在SwaggerModule
中找不到任何合适的方法,Swagger UI也没有任何导出按钮。
6条答案
按热度按时间edqdpe6u1#
根据这个github问题,你可以将创建的Swagger
document
字符串化,并将其写入文件系统,如下所示:z18hc3ub2#
如果您关注 https://docs.nestjs.com/recipes/swagger,请尝试访问
/api/json
而不是/api-json
。eyh26e7m3#
在Nestjs v9中测试
假设docs路径如下
获取JSON
获取YAML
tez616oj4#
除了所示的写入磁盘(https://stackoverflow.com/a/51736406/5693245)的解决方案之外,您仍然可以在自己的API端点上进行访问。
根据docs,根据使用
swagger-ui-express
还是fastify
提供文档,位置将有所不同要生成和下载Swagger JSON文件,请在浏览器中导航到http://localhost:3000/api-json(swagger-ui-express)或http://localhost:3000/api/json(fastify-swagger)(假设您的Swagger文档位于http://localhost:3000/api下)。
这还取决于您提供API的来源,并假设您使用
/api
。如果不是这种情况,请替换为您的端点,或者如果您没有使用swagger-ui-express
的基本URL,则应为http://localhost:3000/-jsonyizd12fk5#
在Nestjs v8中测试
获取JSON
ecbunoof6#
使用NestJS的最新版本(在编写本文时为v8),按照openapi documentation中的设置,您应该能够访问json文档,而无需使用