그럼에도 불구하고

👨‍💻

[Node.js] 미들웨어란? 본문

Node.js/Node.js basics

[Node.js] 미들웨어란?

zenghyun 2023. 2. 1. 21:40

미들웨어 (middleware)에 대해 알아보자

 

 

 

[ 미들웨어 (middleware) ] 

 

미들웨어는 req(요청) 객체, res(응답) 객체, 그리고 애플리케이션 요청-응답 사이클 도중 그다음의 미들웨어 함수에 대한 액세스 권한을 next 인자로  갖는 함수를 말한다. 또한 next 호출을 통해 다음에 있는 미들웨어를 실행하도록 결정할 수도 있다. 

 

즉 미들웨어란 클라이언트에게 요청이 오고, 그 요청을 보내기 위해 응답하려는 중간(미들)에 목적에 맞게 처리하는, 거쳐가는 함수라고 할 수 있다.

 

다음 미들웨어 함수에 대한 엑세스는 next 함수를 이용해서 다음 미들웨어로 현재 요청을 넘길 수 있다.

next라는 말에서 알 수 있듯이 next를 통해 미들웨어는 순차적으로 처리된다. (따라서 작성 순서가 매우 중요하다.)

 

 

[ 미들웨어 특징 ]

 

1. 모든 코드를 실행한다.

 

2. 다음 미들웨어 호출이 가능하다. (미들웨어가 순차적으로 실행)

 

3. res, req 객체 변경이 가능하다.

 

4. 요청-응답 주기를 종료(response methods를 이용)할 수 있다. 

 

 

[ 미들웨어 유형 ]

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

https://despiteallthat.tistory.com/141

 

[Node.js] 어플리케이션 레벨 미들웨어

[ 어플리케이션 레벨 미들웨어 ] app.use() 및 app.METHOD() 함수(*method: get, post 등등)를 이용해 app 오브젝트의 인스턴스에 바인드 시킨다. 미들웨어를 어플리케이션 영역에서 지정한 path대로 처리 가능

despiteallthat.tistory.com

 

2. 라우터 레벨 미들웨어 (추후 작성)

 

3. 오류 처리 미들웨어 (추후 작성)

 

4. 써드파티 미들웨어 (추후 작성)

 

 

 

REF: https://psyhm.tistory.com/8

'Node.js > Node.js basics' 카테고리의 다른 글

[Node.js] Router 사용하기  (0) 2023.02.02
[Node.js] 애플리케이션 레벨 미들웨어  (0) 2023.02.01
[Node.js] Express란?  (1) 2023.02.01
[Node.js] Nodemon 설치하기  (1) 2023.01.31
[Node.js] npm script  (0) 2023.01.31
Comments