본문 바로가기

Node.js/node 기초

미들웨어(middleware)

반응형

미들웨어는 라우터에서 값을 넘기기 전에 먼저 가로채서 실행하는 개념이다(말그대로 중간에 거쳐가는 함수)

 

node express의 미들웨어 사용하기

맞는 상황일때만 next()를 사용해서 값을 넘겨주고

아닌 상황에는 res.sendRedirect(자바 서블릿의 response.sendRedirect 또한 떠올랐다) 로 값을 돌려준다

 

해당 상황은 로그인정보가 없을때 로그인창으로 이동되는등으로 사용이 된다.

const express = require('express');
const admin = require('./routes/admin');

const contacts = require('./routes/contacts');
const nunjucks = require('nunjucks');
const logger = require('morgan');

const app = express();
const port = 3000;

nunjucks.configure('template', {
    autoescape: true,
    express: app,
});

//미들 웨어 셋팅

app.use(logger('dev'));

function vipMiddleware(req, res, next) {
    console.log('최우선 미들웨어');
    next();
}

app.get('/', (req, res) => {
    res.send('hello express');
});

//app.use를 활용해서 admin 라우팅 정보를 불러온다
app.use('/admin', vipMiddleware, admin);

app.use('/contacts', contacts);

app.listen(port, () => {
    console.log('express listening on port');
});

미들웨어는 vue router의 네비게이션 가드(beforeEnter 및 beforeEach, ) 와 미들웨어는 굉장히 비슷한 개념이라고 인식했다

(spring 에서는 aop와 비슷한느낌)

vue 라우터 함수

 

 

반응형

'Node.js > node 기초' 카테고리의 다른 글

express 글로벌 변수및 404, 500 에러 핸들링  (0) 2020.05.15
express 정적 파일 생성하기  (0) 2020.05.15
http 내장모듈을 활용한 서버 구축하기  (0) 2020.05.05
node dns  (0) 2020.05.04
node EventEmitter  (0) 2020.05.04