상세 컨텐츠

본문 제목

쿠키(Cookie) Part 1 - Node.js

Programming

by 쌩우 2019. 4. 12. 01:19

본문

쿠키(cookie)란

웹서버의 정보를 웹브라우저에 저장해서 개인화, 인증, 사용자 추적 등의 기능을 구현할 수 있도록 해주는 것이다.

이번 글에서는 nodejs를 사용하여 쿠키를 알아본다.

 

1. 생성

 

 


//http 모듈을 사용하여 간단하게 서버를 구축 

var http = require('http'); 
http.createServer(function(request, response){ 

//request에 대한 response가 정상적으로 성공하였을 경우, 'Set-Cookie'로 쿠키를 생성하는 코드이다. 
//아래에서는 배열의 요소로서 차례대로 입력하여 'yummy-cookie=choco'와 'tasty-cookie=strawberry' 두 개의 쿠키를 생성한다. 
    response.writeHead(200, { 
        'Set-Cookie':['yummy-cookie=choco', 'tasty-cookie=strawberry'] 
    }); 
    response.end('Cookie!') 
}).listen(3000);

 

 

2. 읽기

: 쿠키에 대한 parse를 용이하게 하기 위하여 'npm install -s cookie'로 설치한 모듈을 적용한다.

 


var http = require('http');
var cookie = require('cookie');
http.createServer(function(request, response){
    var cookies = {};
    if(request.headers.cookie !== undefined){
        cookies = cookie.parse(request.headers.cookie);
    }   
    response.writeHead(200, {
        'Set-Cookie':['yummy-cookie=choco', 'tasty-cookie=strawberry']
    });
    response.end('Cookie!')
}).listen(3000);

//console.log(cookies.yummy-cookie === 'choco') 는 true가 될 것이다.

 

3. 휘발성 쿠키 (Session Cookies) vs 영구적 쿠키 (Permanent Cookies) 

: 웹 브라우저를 껐다 켜도 남아있는 것을 영구적 쿠키, 없어지는 것을 휘발성 쿠키라고 한다.

 

'Set-Cookie':[
            'yummy-cookie=choco', 
            'tasty-cookie=strawberry',
            `Permanent=Cookies: Max-Age=${60}`
        ]
 // Max-Age를 추가하면 초 단위로 쿠키의 수명을 지정할 수 있다.

 

'Programming' 카테고리의 다른 글

비동기 작업들(Async Processes)과 시한폭탄(timeout)  (2) 2020.07.15
Javascript 엔진  (0) 2019.08.31
190824 오늘의 Keyword  (0) 2019.08.24
190823 오늘의 Keyword  (0) 2019.08.23
Try & Catch, 인생은 시도와 에러 처리  (0) 2019.08.22

관련글 더보기

댓글 영역