Express request pipeline

요청은 미들웨어, 라우트, 서비스, 오류 처리로 흐른다

Node.js는 실행 런타임이고 Express는 HTTP 흐름을 연결합니다. TypeScript는 각 경계의 요청, 응답, 설정 타입을 고정합니다.

runtimeV8 기반 Node.js가 브라우저 밖에서 컴파일된 서버 코드를 실행합니다.
Request method, path, header, body가 들어온다.
Middleware 인증, 로깅, 파싱, 검증을 공통 처리한다.
Route URL과 HTTP 메서드를 handler에 연결한다.
Service 비즈니스 규칙과 DB 접근을 라우터 밖으로 분리한다.
Response/Error 성공 응답과 오류 shape을 한곳에서 맞춘다.
타입 계약

Request params, body DTO, response shape을 명시한다.

런타임 경계

환경 변수와 외부 API는 service나 config 계층에서 다룬다.

오류 기준

throw 위치와 error middleware의 응답 형식을 먼저 정한다.