NodeJS

미들웨어

개발자doc 2024. 6. 9. 18:01
목차
1. 미들웨어란?
2. 사용법
3. 미들웨어의 역할

 

nodejs를 시작하면 미들웨어라는 것을 반드시 배우게 된다. 이 미들웨어가 무엇이고 왜 사용을 하는지 알아보도록 하자.

 

1. 미들웨어란?
  • 서버로직 중 요청과 응답 사이에 실행되는 함수 

서버에 요청을 했을 때 라우팅 처리나 공통적인 기능을 처리하는데 사용한다. 

2. 사용법

미들웨어는 서버객체를 통해 호출되는 use메서드로 해당 함수안에 처리할 로직을 작성하면 된다. 

// 문법
서버객체.use("경로",콜백함수);

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

app.use((request,response,next)=>{
    next();
})

문법으로는 use메서드를 호출할 때 경로와 콜백함수를 인자값으로 하는 것이 일반적이지만 필수적인 것은 아니며 공통적으로 처리해야할 기능을 정의해주면 된다. 그리고 인자값 중 콜백함수를 실행 후에 다음 미들웨어를 실행해야 한다면 next함수를 매개변수로 받아 호출해야 다음 미들웨어가 실행된다.

3. 미들웨어의 역할

 

1 ) 요청 분석

 - 요청의 본문 , URL 파라미터, 쿼리 문자열 등 분석

2 ) 로그

 - 요청과 응답 정보를 기록

3. ) 인증 및 권한 부여

 - 사용자가 특정 리소스에 접근할 수 있는지 확인

4 ) 응답생성

 - 요청에 대한 응답을 생성하고 클라이언트로 반환

5 ) 에러처리

 - 요청 중 발생한 에러를 처리 

6 ) 라우팅

 - 요청 URL에 따라 적절한 라우트 핸들로로 요청을 전달