[TIL] NestJS 공부 11일차

정인교·2021년 6월 14일
0

TIL(Today I Learned)

목록 보기
22/67
post-thumbnail

각 핸들러마다 역할 세팅

RoleGuard를 잘 사용하고있지만, guard의 특징 중 하나인 execution context의 장점을 활용하지 못하고있다. 간단하게 설명하자면 execution context는 애플리케이션 작성 시 도움을 줄 수 있는 유틸리티 클래스를 제공하는 것이다.
이걸 잘 사용하기 위해선 CatController에서 라우트별로 다른 권한을 가질 수 있게 설정을 해줘야한다.

// cats.controller.ts
@Post()
@SetMetadata('roles', ['admin'])
async create(@Body() createCatDto: CreateCatDto) {
  this.catsService.create(createCatDto);
}

여기서 @SetMetadata데코레이터를 이용하여 쉽게 해결할 수 있다.
이 데코레이터는 metadata를 덧붙일 수 있게 해준다.

마무리..

최근 프로젝트 집중 기간이라 시간이 부족합니다.. 양해부탁드립니다..

profile
백엔드 개발자 정인교입니다!

0개의 댓글

관련 채용 정보