node.js cookies
쿠키(클라이언트 로컬에 저장되는 키와 값) - 클라이언트 파일로 저장
1. 쿠키를 사용해보자
[관련내용]
http://expressjs.com/ko/4x/api.html#req.cookies
https://www.npmjs.com/package/cookie-parser
1
| npm install cookie-parser --save
|
package.json확인
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| var express = require('express');
var app = express(); var cookieParser = require('cookie-parser'); app.use(cookieParser());
app.get('/cnt', function(req,res){ res.cookie('cnt', 1) res.send('cnt : ' + req.cookies.cnt ); }) app.listen(3005, function () { console.log('app listening on port 3005!'); });
|
위의 코드 작성 후 실행
- localhost:3005/cnt
- chrome 기준-> 개발자도구->network->cnt click-> header 정보에서 Set-Cookies 확인
2. cookie에 담겨있는 cnt 값을 올려보자
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| var express = require('express');
var app = express(); var cookieParser = require('cookie-parser'); app.use(cookieParser());
app.get('/cnt', function(req,res){ if(req.cookies.cnt){ var cnt = parseInt(req.cookies.cnt); }else{ var cnt = 0; } cnt++; res.cookie('cnt', cnt) res.send('cnt : ' + cnt ); }) app.listen(3005, function () { console.log('app listening on port 3005!'); });
|
3.cnt 쿠기 값을 암호화해보자
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| app.use(cookieParser('supserljksdg#23423'));
app.get('/cnt', function(req,res){ if(req.signedCookies.cnt){ var cnt = parseInt(req.signedCookies.cnt); }else{ var cnt = 0; } cnt++; res.cookie('cnt', cnt, {signed:true}); res.send('cnt : ' + cnt ); });
|
위와같이 변경
똑같은 방법으로 cnt를 확인하게 되면 숫자가 아닌 암호화된 값을 확인 할수 있다.