JavaScript/NodeJS

[Node.js] Middleware 란?

KMSEOP 2020. 8. 16. 13:23
728x90

Middleware란?

  • 클라이언트에게 요청이 오면 요청에 대한 응답하기 전인 중간에 목적에 맞게 처리하는 함수
  • 역할
    • 다음 미들웨어 호출(next 함수)
    • req, res 객체 변경 가능
    • 요청-응답 주기 종료(response method 사용)

Middleware 유형

1. 애플리케이션 레벨 미들웨어

  • app.use() or app.method() 함수를 이용해 app 오브젝트의 인스턴스에 바인드
  • 미들웨어를 애플리케이션 영역에 지정한 path대로 처리 가능
app.use((req, res, next) => {
    console.log('Middleware example');
    next();
})

// 특정 경로만 적용
app.use('/example', (req, res, next) => {
    console.log('Middleware example');
    next();
})

2. 라우터 레벨 미들웨어

  • express.Router() 인스턴스에 바인드
  • 사용 방법은 애플리케이션 레벨 미들웨어와 동일

3. 에러 핸들링 미들웨어

  • 에러를 다루기 위한 미들웨어
  • 미들웨어에 4개의 인자 사용 (err, req, res, next)

4. 써드파티 미들웨어

728x90
댓글수0