nest js 를 사용해 dto 를 검증하다보니 정의하지 않은 property 가 들어왔을 때 어떻게 처리해야할지 궁금해졌다.
찾아보니 Koa joi 의 stripUnKnown
같은 기능을 하는 whitelist
옵션이 있다는 것을 알게 되어 사용법과 사용 결과를 정리해본다.
적용 방법은 매우 간단하다. ValidationPipe
의 옵션으로 넣어주면 된다.
매서드 단위로도 작성이 가능하지만 나는 글로벌로 적용했다.
app.useGlobalPipes(new ValidationPipe({ whitelist: true }));
whitelist: false
일 경우whitelist: true
일 경우
dto 에 정의하지 않은 test property 가 제거되어 body params 로 들어온다.