코드
// Express 기본 모듈 불러오기
var express = require('express')
, http = require('http')
, path = require('path');
// Express의 미들웨어 불러오기
var bodyParser = require('body-parser')
, cookieParser = require('cookie-parser')
, static = require('serve-static')
, errorHandler = require('errorhandler');
// 에러 핸들러 모듈 사용
var expressErrorHandler = require('express-error-handler');
// 익스프레스 객체 생성
var app = express();
// 기본 속성 설정
app.set('port', process.env.PORT || 3000);
// body-parser를 이용해 application/x-www-form-urlencoded 파싱
app.use(bodyParser.urlencoded({ extended: false }))
// body-parser를 이용해 application/json 파싱
app.use(bodyParser.json())
app.use('/public', static(path.join(__dirname, 'public')));
// cookie-parser 설정
app.use(cookieParser());
// 라우터 사용하여 라우팅 함수 등록
var router = express.Router();
router.route('/process/showCookie').get(function(req, res) {
console.log('/process/showCookie 호출됨.');
res.send(req.cookies);
});
router.route('/process/setUserCookie').get(function(req, res) {
console.log('/process/setUserCookie 호출됨.');
// 쿠키 설정
res.cookie('user', {
id: 'mike',
name: '소녀시대',
authorized: true
});
// redirect로 응답
res.redirect('/process/showCookie');
});
app.use('/', router);
// 404 에러 페이지 처리
var errorHandler = expressErrorHandler({
static: {
'404': './public/404.html'
}
});
app.use( expressErrorHandler.httpError(404) );
app.use( errorHandler );
// Express 서버 시작
http.createServer(app).listen(app.get('port'), function(){
console.log('Express server listening on port ' + app.get('port'));
});
로그
C:\Program Files\nodejs\node.exe"
Express server listening on port 3000
/process/showCookie 호출됨.
/process/setUserCookie 호출됨.
/process/showCookie 호출됨.
설명
http://localhost:3000/process/setUserCookie
위 URL 호출 시 아래의 결과가 나온다
serUserCookie 호출 시 쿠키에 JSON 객체를 삽입한 후 showCookie 페이지가 호출된다.
showCookie 페이지는 쿠키에 있는 JSON 객체를 파싱하고 결과를 화면에 뿌린다.
{"user":{"id":"mike","name":"소녀시대","authorized":true}}
'IT > Node JS' 카테고리의 다른 글
Node.js 파일 업로드 사용하기 (0) | 2019.06.05 |
---|---|
Node.js 세션 사용하기 (0) | 2019.06.05 |
Node.js 에러 처리하기 (0) | 2019.06.05 |
Node.js params 객체 사용하기 (0) | 2019.06.05 |
Node.js Post 방식 사용하기 (0) | 2019.06.04 |