NestJS의 요청 처리 과정

2025. 4. 14. 18:01·NestJS/NestJS 문서화

NestJS 서버에 사용자가 어떤 것을 요청하면 아래 과정을 거쳐 처리한다.

부가적인 부분과 실제 요청 처리 부분이 나뉘는 이유

인증, 보안, 예외처리, 로그 등 서버를 운영하면서 반드시 필요하지만, 실제 업무 처리 절차와 연관이 없는 부분을 매번 구현하기 보다, 한 번 구현 후 재사용 하는 것이 좋기 때문이다.

왜 이렇게 복잡하게 나누는가?

객체지향 프로그래밍의 원칙 중 하나인 단일 책임 원칙에 의해 각각의 객체는 하나의 책임만 가지도록 설계한다.

각각의 구성요소가 하는 일

Controller와 Service 이외에는 직접 구현하는 일이 많지 않다.

다른 구성요소들은 보통 이미 구현된 것들을 가져다 쓴다.

  • Middleware : 미들웨어는 보통 3자 라이브러리를 의미하고, 다른 스키매틱이 하는 일을 할 수도 있고, 이외의 일을 할 수도 있다.
  • Guard : 인증과 권한 관리. 클라이언트의 요청이 라우팅을 활성화 할 수 있는지 여부를 결정합니다.
  • Interceptor : 요청 혹은 응답에서 필요한 추가적인 부분 담당
  • Pipe : 데이터 유효성 검증 및 데이터 변환
  • Controller : 라우팅
  • Service : 실제 요청을 처리하는 부분
  • Exception filter : 요청 처리 중 발생하는 오류에 대한 예외 처리
각각의 구성요소가 어떤 일을 하는지 미리 정해져 있으면 문제가 발생했을 때, 어떤 구성요소에서 문제가 발생했는지 파악하기 쉽다.
저작자표시 (새창열림)

'NestJS > NestJS 문서화' 카테고리의 다른 글

컨트롤러  (0) 2025.04.23
모듈  (0) 2025.04.23
NestJS 프로젝트 기본 구조  (0) 2025.04.14
Nest CLI  (0) 2025.04.14
NestJS란  (0) 2025.04.14
'NestJS/NestJS 문서화' 카테고리의 다른 글
  • 컨트롤러
  • 모듈
  • NestJS 프로젝트 기본 구조
  • Nest CLI
남느
남느
  • 남느
    남느
    남느
  • 전체
    오늘
    어제
    • 분류 전체보기 (64)
      • 프로그래밍 (15)
      • 웹 기초 지식 (2)
      • Node.js 기초 (1)
      • 알고리즘(Node.js) (1)
      • NestJS (19)
        • NestJS 문서화 (13)
        • NestJS 레시피 (2)
        • NestJS 게시판 API 프로젝트 (4)
      • TypeORM (5)
      • 우분투 적응기 (8)
      • 리눅스 답은 하모니카다 (4)
      • 자바 (1)
      • 살다보니 드는 생각들 (2)
      • 도커 (1)
  • 블로그 메뉴

    • 홈
    • 태그
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    프로그래머
    개발자
    웹
    취업
    백엔드
    신입
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
남느
NestJS의 요청 처리 과정
상단으로

티스토리툴바