Express.js란?
Node.js를 사용하여 쉽게 서버를 구성할 수 있게 만든 클래스와 라이브러리의 집합체
가장 보편적으로 사용되는 웹 애플리케이션 프레임워크
- 최소한의 코어 기능을 제공하는 경량 프레임워크
- 미들웨어를 통한 HTTP 요청/응답 처리 과정에서 다양한 기능을 추가할 수 있다.
- 라우팅 기능을 제공하여 URL 패턴에 따라 적절한 핸들러를 지정할 수 있다.
- 정적 파일 제공, 템플릿 엔진 지원 등 웹 애플리케이션 개발에 필요한 기능을 갖추고 있다.
- 미들웨어를 통해 인증, 로깅, 에러 처리 등의 기능을 쉽게 구현할 수 있다.
- 활발한 커뮤니티와 다양한 써드파티 미들웨어 생태게
미들웨어란 ?
미들웨어는 서버의 요청-응답 과정에서 중간에 위치하여 특정 기능을 수행하는 함수.res(요청)객체, res(응답)객체, 그리고 애플리케이션 요청-응답 사이클 도중 그 다음의 미들웨어 함수에 대한 액세스 권한을 next 인자로 갖는다. 미들웨어는 로깅, 파싱, 인증, 캐싱, 에러 처리 등 다양한 역할을 수행한다.
app.use(function(req, res, next) {
// 미들웨어 로직
next(); // 다음 미들웨어 함수 호출
});