首页 > 解决方案 > 如何捕获“FilesInterceptor”装饰器抛出的错误

问题描述

我正在使用 NestJS@FilesInterceptor来解析多部分请求中的文件数组,这是我使用它的方式:

@FilesInterceptor('files', 3, { some other options })

如果发送了 3 个以上的文件,我需要抛出一个特定的错误,但我得到的是一个套接字挂断客户端

Error: socket hang up

这是服务器控制台中记录的错误:

Error: Unexpected end of multipart data

最后:服务器崩溃:(

那么,我怎样才能捕捉到这个错误来处理它并防止崩溃呢?

标签: expressfile-uploadnestjsmulterinterceptor

解决方案


我发现了问题:服务器有一个全局拦截器,它为传入请求实现超时。如果我删除它,那么错误会被正确解析为HttpException客户端得到一个BadRequest预期的结果
我仍然很困惑为什么当我把它们放在一起时这不起作用......


推荐阅读