npm i cookie
/ npm i @types/cookie
를 사용하여 쿠키를 설치한다.
쿠키 옵션추가를 해야하는 부분이 있는데 참조
: https://ko.javascript.info/cookie
const token = jwt.sign({ username }, process.env.JWT_SECRET);
res.set(
"Set-Cookie",
cookie.serialize("token", token, {
httpOnly: true,
maxAge: 60 * 60 * 24 * 7,
path: "/",
})
);
⬆️ 위와 같이 백엔드에서 쿠키를 설정하는데 옵션들이 있다.
httpOnly
: 이 옵션은 자바스크립트 같은 클라이언트 측 스크립트가 쿠키를 사용할 수 없게 한다. document.cookie를 통해 쿠키를 볼 수도 없고 조작할 수도 없다.secure
: secure는 Https 연결에서만 쿠키를 사용할 수 있게 한다.samesite
: 요청이 외부 사이트에서 일어날 때, 브라우저가 쿠키를 보내지 못하도록 막아준다. XSRF 공격을 막는데 유용하다.expires/max-age
: 쿠키의 만료 시간을 정해준다. 이 옵션이 없으면 브라우저가 닫힐 때 쿠키도 같이 삭제된다.