NestJS 인터셉터(Interceptors) & AOP 패턴

bin-lee·2022년 1월 5일
0

인터셉터(Interceptors)

인터셉터는 의존성 주입이 가능한 @Injectable() 데코레이터 주석이 달린 클래스이며 NestInterceptor 인터페이스를 구현해야 한다.
인터셉터는 AOP(Aspect Oriented Programming) 기술에서 영감을 받은 유용한 기능 세트가 있다. 관점 지향 프로그래밍(AOP)은 cross-cutting concern으로 모듈성을 증가시키는 것이 목적인 프로그래밍 패러다임이다.

Request lifecycle에 따르면 request가 들어오고 middleware, guards 그리고 pre-controller 인터셉트 순으로 실행된다. controller 실행 전에 시작되는 것이다. 그 이후 pipe, controller, service, 다시 post-request 인터셉트가 실행된다. 만약 끝까지 도달 전에 예외가 발생하면 바로 예외 필터로 나간다.

profile
🚀 오늘 배운 건 오늘 적자

0개의 댓글