middleware(미들웨어)란?
- 애플리케이션의 요청-응답 주기에서 요청 객체(req), 응답 객체(res), next() 미들웨어 함수에 접근할 수 있는 기능이다. next 미들웨어 기능은 일반적으로 next라는 변수로 표시한다.
미들웨어 수행 하는 것들
- 모든 코드를 실행
- 요청 및 응답 오브젝트에 대한 변경을 실행
- 요청-응답 주기를 종료
- 스택 내의 그 다음 미들웨어 함수를 호출
현재의 미들웨어 함수가 요청-응답 주기를 종료하지 않는 경우에는 next()를 호출하여 그 다음 미들웨어 함수에 제어를 전달해야 합니다. 그렇지 않으면 해당 요청은 정지된 채로 방치됩니다.
ex)
app.use((req, res, next) => {
console.log("Time", Date.now());
next();
});
- app.use를 이용해 미들웨어를 생성할 수 있다.
next()를 심어줘야지만 다음 미들웨어 또는 함수로 이동할 수 있다.

- 메인 태스크를 마치고, next() 뒷 부분을 호출한다.