Javascript 在验证过程中使用自定义状态代码进行响应

Javascript 在验证过程中使用自定义状态代码进行响应,javascript,typescript,nestjs,class-validator,Javascript,Typescript,Nestjs,Class Validator,我想在验证阶段更改状态代码 从“类验证器”导入{IsEmail,IsNotEmpty}; 导出类CreateUserDto{ @IsEmail() 电子邮件:字符串; @IsNotEmpty() 密码:字符串; } 有了这些规则,如果请求到达我们的端点时请求正文中的电子邮件属性无效,应用程序将自动响应400个错误的请求代码 我的问题是,是否可以将状态代码从400更改为422(不可处理的实体)?您必须创建一个以捕获BadRequestExceptions并将其自己转换为422。无论您是想更改状态

我想在验证阶段更改状态代码

从“类验证器”导入{IsEmail,IsNotEmpty};
导出类CreateUserDto{
@IsEmail()
电子邮件:字符串;
@IsNotEmpty()
密码:字符串;
}
有了这些规则,如果请求到达我们的端点时请求正文中的电子邮件属性无效,应用程序将自动响应400个错误的请求代码


我的问题是,是否可以将状态代码从400更改为422(不可处理的实体)?

您必须创建一个以捕获
BadRequestExceptions
并将其自己转换为422。无论您是想更改状态代码还是整个错误响应,您都应该拥有对
res
对象的完全访问权限,然后能够更改任何内容。

Jay,您的意思是,在创建自定义筛选器以捕获
BadRequestExceptions
并使状态代码转换为我想要的任何内容之后,然后在需要的控制器中使用它?是的,您只需将
@UseFilters
装饰器添加到控制器,该控制器将返回422而不是400。这就是我现在所能想到的。谢谢你的建议:)