본문 바로가기
웹 백엔드/Express

express에서 cookie-parser 사용하기

by 번데기 개발자 2019. 5. 7.
반응형

cookie-parser란?

 

요청된 쿠키를 쉽게 추출할 수 있도록 도와주는 미들웨어 입니다. express의 request(req) 객체에 cookies 속성이 부여됩니다.

node의 npm 패키지에 포함되어 npm install cookie-parser --save를 통해 install하여 사용할 수 있습니다.

 

예제 코드)

var express = require('express');
var cookieParser = require('cookie-parser');

var app = express();
app.use(cookieParser());

app.get('/', function(req, res) {
    console.log('Cookies: ', req.cookies)
})
app.listen(8080)

 

cookie-parser로 쿠키 생성

 

아래와 같이 curl을 날리면 쿠키를 생성후 express endpoint에서 조회 할 수 있습니다.

$curl http://127.0.0.1:8080 -cookie "Cho=Kim, Greet=Hello"

 

 

코스상에서 쿠키 조회

req.cookies.[cookie name]

 

 

response 브라우져 (client) 에 쿠키 생성 예제

res.cookie('hasVisited', '1', {
    maxAge: 60*60*1000,
    httpOnly: true,
    path:'/visitors'
});

key-value로 쿠키 생성

  • 위에서는 'hasVisited'가 key, '1' 이 value 입니다. 

 

쿠키 생성 옵션

 

options

  • maxAge : 만료 시간을 밀리초 단위로 설정
  • expires : 만료 날짜를 GMT 시간으로 설정
  • path : cookie의 경로 default “/“
  • domain : 도메인 네임 default “loaded”
  • secure : https에서만 cookie 사용할 수 있도록 한다.
  • httpOnly : 웹서버를 통해서만 cookie 접근할 수 있도록 한다
  • signed : cookie가 서명되어야 할 지를 결정한다.

 

생성된 쿠키 삭제

res.clearCookie('hasVisited', {path: '/visitors'})

 

  • 경로를 설정한 쿠키는 다음과 같이 path옵션을 줘서 삭제 가능

 

참조 

 

https://skout90.github.io/2017/10/24/Node.js/cookieParser%EB%9E%80/

 

반응형

'웹 백엔드 > Express' 카테고리의 다른 글

express: 413 payload too large 에러 해결하기  (2) 2022.06.02
express의 middleware란?  (0) 2019.03.12