Nig*_*NKY 9 node.js express swagger swagger-ui nestjs
我正在开发基于 NestJS 的 api,并且正在使用 Swagger UI 文档。我想为我的所有控制器保留 @ApiBearerAuth() 的功能,但我希望将其作为全局功能。这样,每次我创建新的路线或端点时,它都会被覆盖。
来自https://docs.nestjs.com/openapi/security文档:
@ApiBearerAuth()
@Controller('cats')
export class CatsController {}
Run Code Online (Sandbox Code Playgroud)
这就是我现在正在关注的内容,但是有没有办法在全球范围内进行设置?
小智 6
@nestjs/swagger
在其可见的源代码中,将addBearerAuth()
安全性设置name
为“承载”,因此可以使用addBearerAuth()
and addSecurityRequirements('bearer')
:
const config = new DocumentBuilder()
...
.addBearerAuth()
.addSecurityRequirements('bearer')
.build();
Run Code Online (Sandbox Code Playgroud)
小智 0
这是一个小技巧,因为我在每个控制器中使用 ApiTags,以便创建一个新的装饰器
import { applyDecorators } from '@nestjs/common';
export function ApiTagsAndBearer(...tags: string[]) {
return applyDecorators(
ApiBearerAuth(), //
ApiTags(...tags),
);
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
8489 次 |
最近记录: |