【问题标题】:Swagger UI is not displaying anything on Amazon EC2 instanceSwagger UI 未在 Amazon EC2 实例上显示任何内容
【发布时间】:2022-07-21 21:18:12
【问题描述】:

我使用 Express 框架开发了 Node.js 应用程序,并使用“swagger-jsdoc”和“swagger-ui-express”进行了记录。 Swagger UI 正在我的“localhost:3000/v1/docs”上加载并正常工作。

现在,我将它部署到 Amazon EC2 实例(Ubuntu、Linux),所有 API 都正常运行,但“myamazonurl.com/v1/docs”正在重定向到 Swagger UI,但没有显示任何内容。

我也配置了pm2和nginx。

控制台和网络中的错误是相同的,并且它们是附加的。

在第一次点击 URL 时:

在重新加载页面时:

运行 Swagger UI 是否需要任何其他配置或设置? 有什么问题?

我会很感激的......

【问题讨论】:

    标签: node.js amazon-ec2 swagger swagger-ui nodejs-server


    【解决方案1】:

    只需将 swagger 配置移到 app.use(helmet()); 插件上方即可:-

    const swaggerUi = require('swagger-ui-express');
    const swaggerDocument = require('../swagger.json');
    app.use('/v1/docs', swaggerUi.serve, swaggerUi.setup(swaggerDocument));
    
    app.use(helmet());
    

    它强制在 https 方案上查找资源,即使它尚未配置。

    来源:Github

    【讨论】:

      猜你喜欢
      • 2015-07-31
      • 2016-08-30
      • 1970-01-01
      • 2016-09-25
      • 2013-03-25
      • 2012-02-12
      • 1970-01-01
      • 2011-10-07
      • 1970-01-01
      相关资源
      最近更新 更多