인프런 커뮤니티 질문&답변

닥부님의 프로필 이미지
닥부

작성한 질문수

[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core

Guard 이론 & 구현할 스펙 정리

Guard 이론 까지 학습 후 질문

작성

·

309

·

수정됨

0

안녕하세요.

1강~가드이론까지만 학습후 질문드립니다. (파이프강의에서도 안나왔고 뒤에 강의에 왠지 안나올거같아서)

 

클라이언트 요청이 컨트롤러까지 가면서

미들 -> 가드 -> 인터셉터 -> 파이프

의 단계를 거친다고 알려주셨는데

nest 에서 이렇게 레이어를 나누어둔 이유, 순서가 이렇게된 이유가 있을까요?

혹은 사실 하나의 레이어에서 동작하는건데 이해를 돕기위에 이런 단계를 거친다고 개념적으로만 나누어 둔것일까요?

답변 1

0

코드팩토리님의 프로필 이미지
코드팩토리
지식공유자

안녕하세요!

'레이어'를 정확히 어떤걸 말씀하시는건지 모르겠습니다.

특정 순서대로 실행이 되니 '레이어'가 다르다고 말 할 수 있는건가요?

아니면 어떤 특별히 생각하시는 구조가 있는걸까요?

일단 제가 키노트에서 말씀드린 순서대로 실행이 되는건 맞습니다.

하지만 순서가 정해진 대단한 이유가 있을거라곤 생각되지 않습니다 (이유가 중요한지 잘 모르겠습니다).

그렇지만 논리적인 부분이 상당히 많이 존재합니다.

예를들면, Guard는 함수 전반에 적용되고 pipe는 파라미터에 적용되니 당연히 논리적으로 큰 그림에 있는 Guard가 먼저 적용돼야한다던지.

Middleware는 프로젝트 전반적으로 적용되니 Guard보다 먼저 적용된다던지.

이정도로도 충분한 이유라고 생각됩니다.

감사합니다!

닥부님의 프로필 이미지
닥부

작성한 질문수

질문하기