[英]Add Swagger base path field in Nest.js project
我正在嘗試使用 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
}
]
}
]
}
];
這樣,一旦我生成並檢查了 swagger,我就會看到我所有的方法都遵循/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()
方法,但它們對我不起作用(我很確定它們已被棄用)。
非常感謝您的幫助。
如果您希望 nestjs 將 api/v1 添加到每個端點,請使用setGlobalPrefix('api/v1')
來做到這一點。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.