Javascript 未调用nestjs异常筛选器

Javascript 未调用nestjs异常筛选器,javascript,node.js,typescript,nestjs,Javascript,Node.js,Typescript,Nestjs,我正在尝试在我的NestJS应用程序中使用异常过滤器。我按照找到的说明设置我的全局例外过滤器,如下所示: @Catch() export class DemoExceptionFilter implements ExceptionFilter { private readonly logger: Logger; constructor() { this.logger = new Logger(DemoExceptionFilter .name);

我正在尝试在我的NestJS应用程序中使用异常过滤器。我按照找到的说明设置我的全局
例外过滤器
,如下所示:

@Catch()
export class DemoExceptionFilter implements ExceptionFilter
{
    private readonly logger: Logger;

    constructor()
    {
        this.logger = new Logger(DemoExceptionFilter .name);
    }

    public catch(exception: unknown, host: ArgumentsHost): void
    {
        this.logger.log(exception);
    }
}
在我的AppModule中,我以以下方式注册了
DemoExceptionFilter

@Module({
    ...
    providers: [
        ...
        {
            provide: APP_FILTER,
            useClass: DemoExceptionFilter
        }
        ...
    ]
})
当我在代码中的某个地方抛出异常时,该异常由控制台中的NestJS记录,但不会调用my
DemoExceptionFilter

我也试过了

app.useGlobalFilters(new DemoExceptionFilter());
main.ts
中,也不起作用


我遗漏了什么?

在文档中,它说明了全局异常过滤器将应用于何处:

全局作用域筛选器用于整个应用程序,用于每个控制器和每个路由处理程序


它们不用于应用程序启动。因此,如果要测试异常过滤器,请在控制器的route handler方法中抛出一个错误,并调用该路由。

在服务构造函数中抛出异常的位置。