[Node.js] Express.js와 Middleware

Derrick Song·2022년 7월 15일
0

Node.js

목록 보기
3/4
post-thumbnail

Express.js란?

웹 애플리케이션 프레임워크로 복잡하고 지저분한 Node.js에서 서버 구축 핵심 로직을 단 몇 줄로 간단히 쓸 수 있도록 해준다!

따라서 Express.js를 이용하여 비즈니스 로직에 더 포커스 할 수 있으며 사실상 Node.js의 표준 서버 프레임워크라고 할 수 있다. JavaScript로 서버 개발하려면 일단 이거 쓰자...

Express.js는 Middleware가 중심!

Express.js는 Middleware 프레임워크인데, Middleware에 대해 알고 갈 필요가 있다.

Middleware란?

Middleware는 순차적으로 처리되는 함수로, Request와 Response 객체에 접근할 수 있으며 다음 Middleware를 호출하는 태스크를 실행할 수 있다.

즉, 클라이언트에게 Request를 받고 다시 Response하기 위해 거쳐가는 함수들인 것이다.

Express.js는 기본적으로 Middleware 함수의 호출로 이뤄진 프레임워크기 때문에 Middleware의 종류와 특성에 대한 Doc은 읽어보는게 좋다.

여기서 가장 중요한 점은,,

Middleware는 순차적으로 실행!

한다는 것이다. 즉 함수의 순서가 매우 중요하다!

예시를 통해 알아보자.

const express = require("express");

const app = express();

app.use((req, res, next)=> {
	console.log("나는야 새로운 Middleware!");
  	next(); // 이게 있어야 다음 Middleware로 접근 가능!
}) // 첫번째 Middleware 생성!

app.use((req, res, next)=> {
	console.log("나는야 Middleware! 근데 순서로는 두번째야!");
}) // 두번째 Middleware 생성!

어렵지 않다.

app.use()를 통해 Middleware를 두개를 생성하였는데 첫번째 Middleware는 서버를 실행하면 접근 가능하지만 두번째 Middleware는 next()를 통해 접근 가능하다. 만약 첫번째 Middleware에 next()가 호출되지 않았다면 두번째 Middleware는 접근이 불가능한 Middleware가 되어 버린다.

profile
과학기술원 학생 개발자

0개의 댓글