백엔드/NestJs

useGlobalPipes 선언을 통한 @Param 타입변환 및 Validation

STUFIT 2022. 8. 1. 00:25
반응형

Postman에서 API 호출 시, 파라미터의 타입은 string으로 들어오게 된다.

이 때, 본인이 원하는 타입으로 변경을 하고 싶을 때에는 @Param 데코레이터에 타입을 지정하면 되는데, 일반적으로 그냥 타입을 지정만 하게 되면 그대로 string 형식으로 들어오는 것을 경험할 수 있다.

이 때, 타입을 변경해주는 방법으로는 controller에서 @Param 데코레이터에 ParseIntPipe 를 옆에 붙여주는 등 원하는 타입의 파이프를 붙여주면 되는데, 일일히 붙여주는 것이 여간 귀찮은 일이 아닐 수 없다.

이 때, main.ts 에 useGlobalPipes를 선언해주게 된다면, 파람 데코레이터 옆에 타입을 선언하게 되면 바로 본인이 원하는 타입으로 변경할 수 있다.

 

main.ts

app.useGlobalPipes(
	new ValidationPipe({
		whitelist:true,  // DTO validation
		forbidNonWhitelisted:true,
		transform:true, // 타입형식 변환
		}),
	);
반응형

'백엔드 > NestJs' 카테고리의 다른 글

[암호화] 양방향 암호화 & 해싱(단방향 암호화)  (0) 2023.01.29
nestjs elasticsearch module set up  (0) 2022.08.22
Validation 설정  (0) 2022.08.01
핫리로딩 적용  (0) 2022.07.03
NestJs 세팅  (0) 2022.06.19