[NEST] Nest 기본 - 2

강지훈·2023년 5월 28일
0

NEST.JS

목록 보기
2/2

1. PIPE

PIPE란?
클라이언트에서 요청을 보낼 때,
메소드 호출 직전에 올바른 요청인지 아닌지 걸러주는 단계


사용법 3가지

  • Handler
    @UsePipes()를 사용하여 이하의 모든 파라미터에 적용시키기

  • Parameter
    ParameterPipe는 파라미터 안에 들어가서 해당 파라미터에만 적용

  • Gloabal
    main.ts에 app.useGlobalPipes(GlobalPipes)를 삽입하여
    모든 서비스에 적용가능

사용예시 

** pipe.ts
import { ArgumentMetadata, PipeTransform } from "@nestjs/common";

export class BoardStatusValidationPipe implements PipeTransform {
  transform(value: any, metadata: ArgumentMetadata) {
    return value;
  }
}


** controller.ts
 @Patch("/:id/status")
  updateBoardStatus(
    @Param("id") id: string,
    @Body("status", BoardStatusValidationPipe) status: BoardStatus
  ) {
    return this.updateBoardStatus(id, status);
  }
}
profile
우당탕탕 개발자

0개의 댓글