[Express] Express 미들웨어

Ahnjh·2022년 9월 21일
0

Express

목록 보기
3/5

미들웨어

미들웨어는 Express의 핵심이라고 많은 사람들이 말을한다.
요청과 응답의 중간에 위치해 미들웨어라고 부르는데 라우터와 에러 핸들러 또한 미들웨어의 일종이므로 미들웨어가 Express의 전부라고 해도 과언이 아니다.
미들웨어는 app.use 와 함께 사용되고 app.use(미들웨어)꼴로 선언된다.

미들웨어 함수는 다음과 같은 태스크를 수행할 수 있다.

  • 모든 코드를 실행.
  • 요청 및 응답 오브젝트에 대한 변경을 실행.
  • 요청-응답 주기를 종료.
  • 스택 내의 그다음 미들웨어를 호출 (next()).

미들웨어함수가 요청-응답 주기를 종료하지 않는 경우에는 next()를 호출하여 그다음 미들웨어 함수에 제어를 전달해 줘야 한다. 그렇지않으면 해당 요청은 정지된채로 방치된다.

const express = require('express');
const app = express();

app.get('/', function(req, res, next) {
  next();
});
  • get은 미들웨어 함수가 적용되는 HTTP 메소드
  • '/' 는 미들웨어 함수가 적용되는 경로 (라우트)
  • function( ...{}) 는 미들웨어 함수
  • req 는 미들웨어 함수에 대한 HTTP 응답 인수 (일반적으로 req 로 사용)
  • res 는 미들웨어 함수에 대한 HTTP 요청 인수 (일반적으로 res 로 사용)
  • next는 미들웨어 함수에 대한 콜백인수 (일반적으로 next로 사용)

참조 : Express 미들웨어

profile
Clean Code & Clean Architecture

0개의 댓글