NESTJS 미들웨어

손승우·2022년 3월 15일
0

웹 개발에서 일반적으로 미들웨어라 함은 라우트 핸들러가 클라이언트의 요청을 처리하기 전에 수행되는 컴포넌트를 말합니다.


요청-응답 주기를 끝낸다는 것은 응답을 보내거나 에러처리를 해야 한다는 뜻입니다. 만약 현재 미들웨어가 응답 주기를 끝내지 않을 것이라면 반드시 next()를 호출해야 합니다. 그렇지 않으면 어플리케이션은 더이상 아무것도 할 수 없는 상태(각주 hanging이라고 표현합니다)가 됩니다.


nest에서는 인증/인가 부분에서 가드(Guard), passport를 권장하고있다.
하지만 파이널 프로젝트당시 팀원들과 회의결과 토큰은 관리할수있다고 생각하여 기본으로 제공된 가드를 사용하지않았다.

당시에 미들웨어에 사용한 코드

express에서 사용했던 코드와 다를게없는코드다.. 그리고 이 코드를 모듈 user 모듈에 적용했더니 중간중간 미들웨어가 적용안되는 곳이 필요했다. 그래서 exclude를 통해 특정을 예외 처리하였다.
profile
개구리

0개의 댓글