[Node.js] 미들웨어 특성

으나·2023년 11월 8일
0

NodeJS

목록 보기
2/4
post-thumbnail

미들웨어 특성

💚 Node.js에서 사용하는 미들웨어에 대해 알아보겠다.
Express 서버는 미들웨어로 구성된다.

  1. 요청과 응답의 중간에 위치하여 미들웨어다.

  2. app.use(미들웨어)로 장착한다.

  3. 코드의 위에서 아래로 순서대로 실행된다.

  4. 미들웨어는 (req, res, next)가 매개변수인 함수다.

  5. req: 요청, res: 응답 조작 가능

  6. next()로 다음 미들웨어로 넘어간다.

  7. app.use('/about', (req, res,next) => {
    console.log('about 요청에 실행하고싶어요');
    next();
    }) // /about 요청에서만 하겠다는 것.

  8. 한 라우터에 send를 2개이상 보내면 안된다.
    -> 요청 한번에, 응답 한번 이어야 하기 때문이다.

에러미들웨어

    1. 404 에러 미들웨어
    app.use(req, res, next) => {
    res.send('404에러입니다');
    })
    2. 500 에러 미들웨어
    // 위에서의 app.use throw에서 에러가 발생했을 떄 next로 넘김
    app.use((req, res, next) => {
    console.log('모든 요청에 실행하고 싶어요.');
    next(); // 이후 /about을 찾아감
    }, (req, res) => {
    throw new next(error); // 매개변수에 error가 있으므로 에러처리 미들웨어로 넘어감
    })

    app.use((err, req, res, next) => {
    console.error(err);
    })

    에러 미들웨어에는 매개변수에 꼭 next가 있어야한다.

profile
Node.js 공부중 ._.

0개의 댓글