You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过swagger-autogen为Swagger配置多个服务器?

问题

我想通过swagger-autogen给Swagger添加多个服务器,但官方文档只提供了单个host的配置示例。我尝试用数组形式配置hosts:

const doc = {
  // ... 其他配置
  hosts: ['localhost:3000', 'localhost:5000'],
  // ... 其他配置
};

结果生成的基础URL变成了http://localhost:3000localhost:5000/,想问下有没有正确添加多个服务器的方式?

正确配置方式

swagger-autogen适配OpenAPI 3.x规范时,配置多服务器不能用hosts数组——hosts是Swagger 2.0的单主机配置项,直接传数组会导致URL拼接错误。

正确的做法是使用servers字段,传入包含url属性的对象数组:

const doc = {
  // ... 其他配置
  servers: [
    { url: 'http://localhost:3000' },
    { url: 'http://localhost:5000' }
  ],
  // ... 其他配置
};

这样生成的Swagger文档会正常显示多个可选的服务器地址,不会出现URL拼接异常的问题。

内容的提问来源于stack exchange,提问作者Islam Goher

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 07:25:24