pipeline summary
요청은 핸들러까지 직선으로만 가지 않는다
각 구성요소는 실행 위치, 변경 대상, 실패 처리 방식이 다르다. 이름을 외우기보다 어떤 값을 만지는지로 구분한다.
판단축: 위치 · 대상 · 실패이 세 가지를 같이 보면 선택 실수가 줄어든다.
요약 실행 순서
1공통 전처리
모든 요청에 공통으로 필요한 처리를 먼저 수행한다.
2접근 판단
사용자와 역할을 확인해 실행 여부를 결정한다.
3핸들러 감싸기
실행 전후 문맥을 만들고 반환값을 다룬다.
4입력 변환
매개변수와 DTO를 검증하고 필요한 타입으로 바꾼다.
5비즈니스 처리
컨트롤러와 서비스가 실제 업무 로직을 수행한다.
6응답 후처리
반환값을 표준 응답 모양으로 정리한다.
파이프라인 구성요소 비교
| 구성요소 | 실행 위치 | 주로 만지는 것 | 실패 시점 |
|---|---|---|---|
| Middleware | 라우팅 전 | req, res, next | 다음 단계로 넘기지 않음 |
| Guard | 핸들러 선택 후, 실행 전 | 사용자, 역할, 권한 | Forbidden 또는 Unauthorized |
| Interceptor | 핸들러 앞뒤 | 요청 전후 문맥과 반환값 | 예외 매핑 또는 응답 변환 |
| Pipe | 매개변수 바인딩 직전 | DTO, params, query, body | Bad Request |
핵심: 요청 데이터는 Pipe, 접근 가능 여부는 Guard, 앞뒤 감싸기는 Interceptor로 바로 구분한다.