在 Swagger UI 中更改默认 API 规范 URL

Change default API spec URL in Swagger UI

我正在使用 Swagger Editor Docker 图像来定义我的 API 规范并生成一个 nodejs 服务器到 运行 作为存根 api 并为我的 API 规格。

我想知道是否可以将默认 URL 更改为我自己的,以便在我打开页面时显示我的规范,以及我将如何做到这一点。

例如,我想将默认地址更改为http://localhost:8080/spec

如果我没理解错的话,您使用 Swagger Codegen 生成了一个 Node.js 服务器。现在,当您 npm start 并打开 Swagger UI 时,您希望输入框(规范 URL)显示 http://localhost:8080/spec instead of http://localhost/api-docs .

要更改提供 .yaml 规范的路径,请按如下方式编辑您的 index.js

// 1 - add swaggerUi options
var uiOptions = {
  apiDocs: '/spec'  // <-- override the default /api-docs
};

swaggerTools.initializeMiddleware(swaggerDoc, function (middleware) {
  ...

  // 2 - pass these options to swaggerUi
  app.use(middleware.swaggerUi(uiOptions));

端口号由index.js中的serverPort变量指定:

var serverPort = 8080;