Nodejs 공부하기!

미들웨어 종류!

hyer!! 2020. 11. 29. 13:12

static 미들웨어

특정 폴더의 파일들을 특정 패스로 접근할 수 있도록 열어주는 역할을 한다.

var static = require('serve-static');
var path = require('path');
app.use('/path', static(path.join(__dirname, 'image')));


var server = http.createServer(app).listen(app.get('port'), function(){
    console.log('익스프레스로 웹 서버를 실행함 : ' + app.get('port'));
});       

'/path' : 요청 패스

'image' : 프로젝트의 'image' 폴더

 

body-parser 미들웨어

클라이언트가 POST 방식으로 요청할 때 본문 영역에 들어 있는 요청 파라미터들을 파싱하여 요청 객체의 body속성에 넣어준다.

var bodyParser = require('body-parser');
app.use(bodyParser.urlencoded({extended:false}));
app.use(bodyParser.json());

app.use(function(req, res, next){
    console.log('첫 번째 미들웨어 호출');
    //클라이언트가 요청한 값
    var paramId = req.body.id;//name이 id인 값
    var paramPw = req.body.password; //name이 password인 값
    
    //요청받은 값을 호출
    res.writeHead('200', {"Content-Type":"text/html;charset=utf-8"});
    res.write('<h1>EXPRESS 서버에서 응답한 결과입니다.');
    res.write('<div><p>param ID : ' + paramId +'</p></div>');
    res.write('<div><p>param PW : ' + paramPw +'</p></div>');
    res.end();
    
});

var server = http.createServer(app).listen(app.get('port'), function(){
    console.log('익스프레스로 웹 서버를 실행함 : ' + app.get('port'));
});