更改 swagger-ui dist bundle 的默认端口

Posted

技术标签:

【中文标题】更改 swagger-ui dist bundle 的默认端口【英文标题】:Change default port for swagger-ui dist bundle 【发布时间】:2018-06-18 08:29:50 【问题描述】:

您将如何更改 swagger-ui dist 版本的默认端口?

默认情况下,它侦听端口 8080 上的请求。我希望它监听其他端口。用例是我们希望在我们的主机上运行几个 dist,但监听不同的端口。

这可能吗,还是您确实需要进行一些更复杂的设置?

我们通过node js默认包运行:


  "name": "dist",
  "version": "1.0.0",
  "description": "",
  "main": "swagger-ui-bundle.js",
  "scripts": 
    "start": "http-server"
  ,
  "keywords": [],
  "author": "",
  "license": "ISC"

【问题讨论】:

如何运行 Swagger UI? 通过node.js默认http服务器。 this 有帮助吗? Swagger UI 是一个静态网页,它从哪个端口提供服务取决于您使用的服务器和服务器配置。澄清一下,你的意思是swagger-ui-dist npm 包吗? this 怎么样? 【参考方案1】:

我知道的最简单的解决方案就是使用 docker 并通过 -p 80:8080 映射端口:

https://hub.docker.com/r/swaggerapi/swagger-ui/

docker run -p 80:8080 -e API_URL=http://generator.swagger.io/api/swagger.json swaggerapi/swagger-ui

如果您不使用 API_URL here 是上述 docker 的 docker 文件 - 您可以使用此信息 SWAGGER_JSON "/app/swagger.json" 将路径映射到本地机器中的 swagger.json(使用 docker --volume 参数)

【讨论】:

那将是我的选择,但在首选服务器上的环境中,我们不能使用 docker。否则我们会采用这种方法。

以上是关于更改 swagger-ui dist bundle 的默认端口的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Swagger-UI 中打开本地文件

Reactjs - /dist 文件夹只有 2 个文件 - bundle.js 和 bundle.js.map - 不包含任何其他文件

Angular 6 服务器端错误:找不到模块:错误:无法解析“./dist/server/main.bundle”

GET http://127.0.0.1:8000/dist/bundle.js net::ERR_ABORTED 404(未找到),尽管编译成功。(vuejs+django webapp)

Electron VueJS - 构建错误 - 无法注册应用程序协议。在 app.asar 中找不到 ENOENT、\dist_electron\bundled

解决webpack因新版本打包失败问题--ERROR in multi ./src/main.js ./dist/bundle.js