Pipe
파이프는 PipeTransform 인터페이스를 구현하는 @Injectable() 데코레이터로 주석이 달린 클래스입니다.
파이프에는 두 가지 일반적인 사용 사례가 있습니다.
변환: 입력 데이터를 원하는 형식으로 변환(예: 문자열에서 정수로)
유효성 검사: 입력 데이터를 평가하여 유효하면 변경하지 않고 그대로 전달하고, 그렇지 않으면 예외를 던집니다.
내장 Pipe를 이용해서 입력값 변환하기
@Get(':id')
async findOne(@Param('id', ParseIntPipe) id: number) {
return id;
}
만약 파라미터가 숫자형으로 변환할 수 없는 경우 ('cats/abc')엔 자동으로 입력값 검증 실패 예외 처리까지 해줍니다.
{
"success": false,
"timestamp": "2023-03-19T01:08:55.940Z",
"path": "/cats/abc",
"statusCode": 400,
"message": "Validation failed (numeric string is expected)",
"error": "Bad Request"
}
'개발 공부 > NestJS' 카테고리의 다른 글
Serialize 직렬화 (0) | 2023.03.23 |
---|---|
인터셉터 Interceptor (0) | 2023.03.19 |
예외 필터 Exception filter (0) | 2023.03.19 |
미들웨어 Middleware (0) | 2023.03.19 |
Configuration (0) | 2023.03.12 |