switch

nest pipe, 커스텀파이프 본문

back-end/nest

nest pipe, 커스텀파이프

5witch 2022. 3. 15. 21:51

파이프는 유효성체크 및 입력데이터변환에 사용된다.

 

nest홈페이지

 

nest 기본 제공하는 pipe들

 

* 핸들러레벨 파이프 : 데코레이터 형식의 pipe

 

* 파라미터레벨 파이프 : 한 파라미터에 대한 pipe

 

* 글로벌레벨파이프 : 모든요청에 대한 pipe (main.ts 에 적어줌)

 

* 커스텀파이프

새롭게 만들 커스텀파이프에 pipeTransform 인터페이스를 구현해줘야함
pipeTransform인터페이스는 모든 파이프에서 구현해줘야하는 인터페이스임
또한 모든 파이프는  nestjs가 인자를 처리하기위해서 transform() 메소드를 필요로함

transform()메소드
이 메소드는 두개의 파라미터를 가짐
첫번째 파라미터는 처리가된 인자의 값(value),
두번째 파라미터는 인자에대한 메타데이터(metadata)를 포함한 객체임
transform()메소드에서 reuturn된 값은 route핸들러로 전해짐
만약 예외(exception)가 발생하면 클라이언트에 바로 전해짐

 

vlaue와 metadata의console.log

 

'back-end > nest' 카테고리의 다른 글

Nest generate 사용하기  (0) 2022.03.24
nest의 미들웨어  (0) 2022.03.19
nest 루트폴더 파일들 간단설명  (0) 2022.03.15
[NEST오류]error: cannot find module 'passport-jwt'  (0) 2022.03.13
DTO와 Entity  (0) 2022.03.12
Comments