0

我正在使用嵌套 js 来制作Restfull Api. 我也class-validator ,and class-transform用来验证我的请求 ot DTO。目前它正在显示此错误

{"statusCode":400,"message":["username should not be empty","description should not be empty"],"error":"Bad Request"}

我想自定义此响应,例如

{"statusCode":400,"message":["username is required","description is required"],"error":"Bad Request from user"}

有可能nestjs吗?

这是我的代码 https://codesandbox.io/s/nest-9ziyr?file=/src/dto/user.dto.ts

我是这样使用的

import { IsNotEmpty } from 'class-validator';

export class UserDto {
  @IsNotEmpty()
  username: string;

  @IsNotEmpty()
  description: string;
}

在控制器中

 @Post('/create')
  @UsePipes(ValidationPipe)
  createUser(@Body() createTaskDto: UserDto): string {
    console.log('====');
    return 'jjjj';
  }

这是我的代码 https://codesandbox.io/s/nest-9ziyr?file=/src/dto/user.dto.ts

使用类似 POST的 API

https://9ziyr-5000.sse.codesandbox.io/create
4

1 回答 1

2

使用类验证器,您可以将消息属性传递给验证装饰器并更改错误消息。像这样的东西:

import { IsNotEmpty } from 'class-validator';

export class UserDto {
  @IsNotEmpty({ message: 'username is required' })
  username: string;

  @IsNotEmpty({ message: 'description is required' })
  description: string;
}
于 2020-05-28T05:45:24.050 回答