리셋 되지 말자

[NodeJS] 쿠키의 생성 본문

NodeJS/생활코딩

[NodeJS] 쿠키의 생성

kyeongjun-dev 2020. 9. 25. 15:14

쿠키 생성 전

var http = require('http');

var app = http.createServer(function(request, response){
    // response.writeHead(200, {
    //     'Set-Cookie' : ['yummy_cookie=choco', 'tasty_cooke=strawberry']
    // });
    response.end('hello world');
});

app.listen(80);

이렇게 간단히 nodejs 웹서버를 구성하고, 실행한 뒤 개발자 도구의 Network 탭을 확인해본다.

별다를게 없는 get방식의 요청과 응답이다.

  • cookie.js
var http = require('http');

var app = http.createServer(function(request, response){
    response.writeHead(200, {
        'Set-Cookie' : ['yummy_cookie=choco', 'tasty_cooke=strawberry']
    });
    response.end('hello world');
});

app.listen(80);

response.writeHead는 첫번째 인자로 숫자, 그리고 두번째 인자로는 객체가 들어오도록 되어있다. 두 번째인자에 key-value 형태로 쿠키를 추가한다. 복수의 쿠키를 쓰기 위해선 배열을 사용한다.

접속해보면, Response Headers에 cookie.js에서 설정한 쿠키들이 들어있는 것을 확인할 수 있다.

 

  • cookie.js
var http = require('http');

var app = http.createServer(function(request, response){
    // response.writeHead(200, {
    //     'Set-Cookie' : ['yummy_cookie=choco', 'tasty_cooke=strawberry']
    // });
    response.end('hello world');
});

app.listen(80);

다시 쿠키값을 response하지 않도록 주석처리를 한 후에 웹서버를 다시 실행시키고, localhost 페이지를 새로고침 한 뒤 Request Headers를 확인해보면, 쿠키가 심어저 있는것을 확인할 수 있다.

 

cookies 탭으로 이동하면 쿠키를 확인할 수 있다.

set-cookie 응답으로 인해 쿠키가 웹 브라우저에 심어지고, 심어진 쿠키를 웹 브라우저가 웹서버에 요청을 하고있는 상태이다.

 

쿠키제거

Application 탭에서 좌측에 쿠키를 선택하고, 빨갛게 표시된 'Clear All' 버튼으로 제거할 수 있다.

Comments