NodeJS/생활코딩
[NodeJS] Session cookie와 Permanent cookie
kyeongjun-dev
2020. 9. 25. 16:49
Session cookie
웹 브라우저가 켜있는 상태에서 유효하고, 껏다가 다시 키면 사라진다.
Permanent cookie
웹 브라우저를 껏다가 켜도 유효하다.
Permanent cookie 사용하기
- cookie.js
var http = require('http');
var cookie = require('cookie');
var app = http.createServer(function (request, response) {
if (request.headers.cookie != undefined) {
console.log(cookie.parse(request.headers.cookie));
}
response.writeHead(200, {
'Set-Cookie': ['yummy_cookie=choco',
'tasty_cooke=strawberry',
`Permanent1=cookies; Expires=Wed, 21 Oct 2021 07:28:00`,
`Permanent2=cookies; Max-Age=${60*60*24}`]
});
response.end('hello world');
});
app.listen(80);
쿠키의 이름=값; 으로 지정한뒤, 그 뒤에 Expires 또는 Max-Age를 사용하면 Permanent cookie가 된다.
Expires는 절댓값으로, 지정한 시간에 cookie가 만료되도록 하고, Max-Age는 상대값으로 현재 시간으로부터 지정한 숫자만큼의 '초'가 지면 cookie가 만료된다.
만료되는 날짜를 확인해보면 2021년 10월 21일에 만료되는 Permanent1 쿠키와, 이 글을 작성하는 현재 시간이 2020년 9월 25인인데 하루가 지나서 만료되는 Permanent2 쿠키를 확인할 수 있다.
cookie.js의 쿠키 전송하는 부분을 주석처리 후, 브라우저를 모두 종료시킨 뒤 웹서버를 다시 켰을 때, Permanent 쿠키만 있는걸 확인할 수 있다.