🌐 웹개발

미들웨어

Middleware

요청과 응답 사이에서 처리를 수행하는 소프트웨어. 인증, 로깅, 에러 처리 등에 활용.

상세 설명

미들웨어(Middleware)는 요청(Request)과 응답(Response) 사이에서 실행되는 함수입니다. 주로 인증, 로깅, 에러 처리, 데이터 변환 등 공통 작업을 처리합니다.

미들웨어는 체인처럼 연결되어 순차적으로 실행되며, next()를 호출해야 다음 미들웨어로 넘어갑니다.

코드 예제

// Express.js 미들웨어 app.use((req, res, next) => { console.log(`${req.method} ${req.url}`); // 로깅 next(); // 다음 미들웨어로 }); // 인증 미들웨어 const authMiddleware = (req, res, next) => { if (!req.headers.authorization) { return res.status(401).json({ error: 'Unauthorized' }); } next(); }; app.get('/api/protected', authMiddleware, (req, res) => { res.json({ data: 'secret' }); });

실무 대화 예시

신입

"모든 API에서 로그인 체크하려면 if문 다 넣어야 해요?"

시니어

"미들웨어 하나 만들어서 라우터에 적용해. 공통 로직은 미들웨어로 빼는 게 기본이야."

주의사항

순서 중요: 미들웨어는 등록 순서대로 실행됩니다. 인증 미들웨어가 라우터보다 뒤에 있으면 의미가 없습니다.

next() 호출 필수: next()를 호출하지 않으면 요청이 멈춥니다.

관련 용어

더 배우기