Javascript 如何拦截特定请求
我使用的是Javascript 如何拦截特定请求,javascript,angular,typescript,nestjs,Javascript,Angular,Typescript,Nestjs,我使用的是NestJS和angular2,它们都有类似的(接近的)方法来处理拦截器。我想找到最佳实践,以确定一些具体的要求,做一些额外的工作 要声明拦截器谁将监听一些控制器(在NestJS中),我应该使用以下逻辑: @UseInterceptors(ObjectsInterceptor) @Controller('objects') export class ObjectsController { @Get() async findAll(): Promise<ObjectDto
NestJS
和angular2
,它们都有类似的(接近的)方法来处理拦截器。我想找到最佳实践,以确定一些具体的要求,做一些额外的工作
要声明拦截器
谁将监听一些控制器
(在NestJS
中),我应该使用以下逻辑:
@UseInterceptors(ObjectsInterceptor)
@Controller('objects')
export class ObjectsController {
@Get()
async findAll(): Promise<ObjectDto[]> {
// Request which should be intercepted
...
}
@Get(':slug')
async findOne(@Params('slug') slug: string): Promise<ObjectDto> {
// Request which shouldn't be intercepted
...
}
}
也许我用了错误的方法来解决我的问题只是把decorator放在方法之上而不是类之上
@Get()
@使用拦截器(ObjectsInterceptor)
异步findAll():承诺{
//应该拦截的请求
...
}
我几乎可以肯定,您可以将装饰程序置于要拦截的请求之上,而不是整个请求之上controller@MorKadosh没错,非常感谢!
@Injectable()
export class ObjectsInterceptor implements NestInterceptor {
intercept(context: ExecutionContext, next: CallHandler<any>): Observable<any> {
// Some logic to detect specific request
return next.handle();
}
}