我正在尝试使用 nestjs/swagger 从我的后端创建一个 swagger 文件,但我遇到了与基本路径相关的问题。我想要实现的是将版本显示为基本路径,而不是在所有可用的方法中显示它,这既丑陋又令人困惑。
现在,我的 API 具有以下结构(这是 中存在的一组内容app.module.ts
):
const routes: Routes = [
{
path: '/api',
module: ApiModule,
children: [
{
path: '/v1',
module: V1Module,
children: [
{
path: '/orders',
module: OrdersModule
},
{
path: '/users',
module: UsersModule
}
]
}
]
}
];
这样,一旦我生成并检查了招摇,我就会看到我所有的方法都跟在/api/v1
前缀后面。这可能是一个例子:
订单
GET /api/v1/orders
POST /api/v1/orders
GET /api/v1/orders/{order_id}
...
用户
GET /api/v1/users
POST /api/v1/users
GET /api/v1/users/{user_id}
...
我想要的是摆脱/api/v1
以任何方式出现。我知道 SWAGGER 有 和 的字段host
,basePath
但没有找到任何方法在 Nest.js 中填充它。研究,我发现有一些方法.setBasePath()
,.addServer()
但它们对我不起作用(我很确定它们已被弃用)。
非常感谢您的帮助。