-
CookieNode.js/백엔드 2021. 5. 1. 06:40
쿠키(cookie)란 브라우저에 저장 가능한 작은 데이터 조각이다. HTML5에서 WebStorage API (LocalStorage, sessionStorage) 가 소개 되기 전까지 브라우저에 데이터를 저장할 수 있는 유일한 방법이었다.
쿠키는 4KB(=4096byte) 미만의 하나의 문자열이고, 브라우저에 저장된 후 document.cookie 로 접근할 수 있으며 세미콜론(;)으로 구분된 key-value 쌍을 포함하고 있다.
document.cookie를 통한 쿠키 연산
document.cookie 는 getter와 setter를 가진 object다.
document.cookie로 새로운 값을 할당하면 setter 가 동작한다.
모든 쿠키는 하나의 스트링으로 저장되기 때문에 아래와 같은 방법으로 하나의 쿠키만 가져올 수 있다.
쿠키에는 추가적인 옵션을 지정해줄 수 있다.
Expires
expires 옵션을 설정하여 쿠키의 생명 주기를 변경할 수 있다.
expiry date를 지금으로 설정하면 쿠키를 쉽게 삭제할 수 있다.
Max-Age
expires와 비슷하나 초 단위를 사용하며 expires 보다 우선순위가 높다.
HttpOnly
HttpOnly를 설정하면 JavaScript와 document.cookie 프로퍼티로 쿠키에 접근하지 못하게 된다. 따라서 Cross-site scripting(XSS)과 같은 공격을 막을 수 있으며 더 안전해진다. Set-Cookie 응답 헤더를 통해 설정할 수 있다.
'Node.js > 백엔드' 카테고리의 다른 글
TS + Sequelize | Error: SyntaxError: Cannot use import statement outside a module 해결 방법 (0) 2021.06.03 app.locals, req.app.locals, res.locals의 차이 (0) 2020.04.05 AWS EC2로 Node.js 애플리케이션 배포하기(+ pm2) (0) 2020.03.05 (ppt슬라이드) Express로 서버 구축하기, Sequelize란? (0) 2020.01.31 What app.set function do (Express.js) (0) 2020.01.30