컨트롤러에서 제공되는 Body 데이터 값의 데이터의 변환(Transform)과 검증(Validation)을 처리하는 데 사용하는 도구
요청의 데이터를 가공하거나 검사하는 클래스 또는 함수
Controller에 들어가기 전에 데이터를 조작하거나 유효성 검사를 할 수 있다.
요청 본문(Body)
쿼리 파라미터(Query)
라우트 파라미터(Params)
헤더/쿠키 등

// DTO validator 검증 (class-validator)
app.useGlobalPipes(
new ValidationPipe({
whitelist: true, // 없는 필드를 작성하면 무시
forbidNonWhitelisted: true, // 없는 필드를 작성하면 에러
}),
);
ParseIntPie: Int 값으로 변환, 검증한다.
ParseFloatPipe: Float 값으로 변환, 검증한다.
ParseBoolPipe: Bool 값으로 변환, 검증한다.
ParseArrayPipe: Array 값으로 변환, 검증한다.
ParseUUIDPipe: UUID 값으로 변환, 검증한다.
ParseEnumPipe: Enum 값으로 변환, 검증한다.
DefaultValuePipe: 기본값을 설정한다.
ParseFilePipe: 파일을 검증한다.