Web Basic · Express

Express 요청 파이프라인

Express 입문에서 봐야 할 것은 라우트 개수가 아니라, 요청이 공통 middleware를 지나 route handler에서 응답으로 닫히는 순서다.

01

서버 시작

app.listen이 포트를 열고 들어오는 HTTP 요청을 기다린다.

02

공통 처리

JSON 파서, logging, CORS 같은 middleware가 순서대로 실행된다.

03

라우트 매칭

method와 path가 맞는 handler가 요청을 받는다.

04

응답 종료

res.status와 res.json으로 상태와 본문을 보내 요청을 닫는다.

app.use
공통 middleware 모든 요청 또는 특정 path 앞단에 처리 삽입
순서가 중요
req
요청 정보 params, query, body, headers
외부 입력 검증 필요
res
응답 작성 status, json, send, redirect
모든 분기에서 종료
error handler
실패 통합 throw 또는 next(error)를 일관된 오류로 변환
마지막에 배치

순서 · 입력 · 응답 점검

순서 JSON parser가 body를 쓰는 route보다 먼저 등록된다.
입력 body와 params를 handler 초입에서 검증한다.
응답 조건 분기마다 응답이 한 번만 전송된다.
오류 개발 stack trace를 운영 응답에 노출하지 않는다.