2

有没有办法将生成的 swagger.json 作为集合导入 Postman?

我尝试导入它,但 Postman 中没有显示端点?

我正在使用 NestJs 和 Swagger + Postman

4

2 回答 2

3

您可以使用fastify-swagger它在 Postman 中使用它来导出您的 swagger 数据。

要生成和下载 Swagger JSON 文件,请在浏览器中导航到 http://localhost:3000/api-json (swagger-ui-express) 或 http://localhost:3000/api/json (fastify-swagger) (假设您的 Swagger 文档在 http://localhost:3000/api 下可用)。

有关使用 NestJS 的 openApi 的更多信息,请参见此处

于 2021-03-09T13:54:35.870 回答
0

在 main.ts 中设置您的招摇时(请参阅此处的文档:NestJs Swagger Docs),您可以添加.setExternalDoc('Postman Collection', '/your-api-docs-url-with-the-word-json-at-the-end'). 这会在文件顶部为您提供一个链接,以便您可以单击以获取可导入的 JSON。

这是我的一个例子:

const document = SwaggerModule.createDocument(
    app,
    new DocumentBuilder()
      .setTitle('Nest Api')
      .setDescription('MyNestApiDescription')
      .setVersion('1.0')
      .addBearerAuth()
      .setExternalDoc('Postman Collection', '/docs-json')
      .build(),
  );
  SwaggerModule.setup('/docs', app, document);

如您所见,我的 API 文档位于'/docs'所以我的 json url 很简单'/docs-json'

邮递员收藏链接图片

有关如何将其导入 Postman 的信息,请参阅此 stackoverflow 帖子:Postman JSON Docs Import

于 2022-01-31T17:34:03.620 回答