Node.js Swagger ui不断显示示例petstore,而不是提供的Swagger.json

Node.js Swagger ui不断显示示例petstore,而不是提供的Swagger.json,node.js,swagger,swagger-ui,Node.js,Swagger,Swagger Ui,我按照说明使用swagger jsdoc为现有节点API设置了swagger文档。 正确地提供了swagger.json,我在index.html中SwaggerUiBundle的url参数中添加了一个路径,如下所示: const ui = SwaggerUIBundle({ url: "https://my.domain:5292/swagger.json", dom_id: '#swagger-ui', presets: [ SwaggerUIBundle.presets.apis,

我按照说明使用swagger jsdoc为现有节点API设置了swagger文档。 正确地提供了swagger.json,我在index.html中SwaggerUiBundle的url参数中添加了一个路径,如下所示:

const ui = SwaggerUIBundle({
url: "https://my.domain:5292/swagger.json",
dom_id: '#swagger-ui',
presets: [
  SwaggerUIBundle.presets.apis,
  SwaggerUIStandalonePreset
],
plugins: [
  SwaggerUIBundle.plugins.DownloadUrl
],
layout: "StandaloneLayout" })
但是,在浏览器中打开页面时,它尝试做的第一件事是显示默认值,而不是我的swagger.json。它实际上没有做到这一点,因为我通过https提供页面,而petstore不是https,但这是另一回事

手动将我的地址输入到swagger.json页面的表单中,效果与预期一样。它正确显示API页面并对其进行验证。但是,我不想总是在那里重新输入地址,而是希望将其作为默认地址。

Swagger UI 3.0.9有一个错误,它忽略了
url
参数并始终打开Petstore


它是在3.0.10中修复的。

我最近在使用docker部署时遇到了这个问题。尝试了一切,从更改petstore的所有实例到我自己的api json文档,但都没有成功。 最后,我发现了API_URL环境变量,并在DockerFile中将其设置为我的API文档,瞧!
我花了两天的时间,但看到它终于开始工作真是太好了。

哈,我知道它会是这样的。实际上我不打算检查这个,因为我最终不再招摇过市了,但这看起来是一个完美的解释。谢谢。你好,加尼。首先,我在dockerfile中使用了Swagger UI 3.25.0,我添加了以下行ENV API_KEY“None”ENV Swagger_JSON“/app/Swagger.JSON”ENV PORT 8080 ENV API_URL“”