반응형
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 |