본문 바로가기
Back-End/node.js

[[node.js]] Session Cookie와 Permanent Cookie

by blackjack_96 2022. 3. 9.

[[node.js]] Session Cookie와 Permanent Cookie

 

오늘은 Session Cookie와 Permanent Cookie에 대하여 알아보겠습니다.

HTTP Server가 HTTP Client에게 보내는 쿠키는

보관 기간에 따라 2가지 종류로 나뉩니다.

 

 

Session Cookie : 클라이언트 측에서 웹 브라우저를 끄면 바로 삭제되는 쿠키

Permanent Cookie : 웹 브라우저를 끄던 말던 관계 없이 일정 기간동안 지속되는 쿠키

 

 

const http = require("http");
const cookie = require('cookie');

app = http.createServer(function(request,response){
    if (request.headers.cookie) {
        var cookies = cookie.parse(request.headers.cookie);
        console.log(cookies);
    }

    response.writeHead(200,{
        'Set-Cookie' : ['yummy-cookie=choco',
        'tasty-cookie=strawberry',
        `smell-cookie = orange; Max-Age=${60*60*24}`,
        `color-cookie = lemon; expires=${new Date(new Date().getTime()+60*60*24).toUTCString()}`]
    });

    response.end('Cookie!!');
});

app.listen(3000);

 

위 코드에서

'yummy-Cookie'와 'tasty-cookie'처럼

아무 조건이 붙지 않으면

Session Cookie가 생성됩니다.

 

 

그리고 'smell-cookie'와 'color-cookie'와 같이

Max-Age나 expires옵션을 통하여

지속 기간이나 만료 시각을 지정해주면

Permanent Cookie가 생성됩니다

 

 

웹 브라우저의 개발자 도구를 이용하여 확인해보겠습니다.

 

 

 

서버측에서 송신한 쿠키와

HTTP Response Header를 보니

위와 같이 Session cookie와 Permanent Cookie가 전송되었음을 알 수 있습니다.