쿠키는 브라우저에 저장되는 작은 크기의 문자열로, RFC 6265 명세에서 정의한 HTTP 프로토콜의 일부
Reference: 모던자바스크립트 쿠키와 document.cookie
쿠키는 주로 웹 서버에 의해 만들어 진다.
서버가 HTTP 응답 헤더(header)의 Set-Cookie
에 내용을 전달하면, 브라우저는 이 내용을 자체적으로 브라우저에 저장한다.
브라우저는 사용자가 쿠키를 생성하도록 한 동일 서버(사이트)에 접속할 때 마다 쿠키의 내용을 Cookie
요청 헤더에 넣어서 함께 전달한다.
쿠키는 클라이언트 식별과 같은 인증에 가장 많이 쓰인다.
Set-Cookie
에 담긴 “세션 식별자(session identifier)” 정보를 사용해 쿠키를 설정Cookie
헤더에 인증 정보가 담긴 고윳값(세션 식별자)을 함께 실어 서버에 요청을 보냄웹 스토리지 객체(web storage object)인 localStorage
와 sessionStorage
는 브라우저 내에 키-값 쌍을 저장할 수 있게 해준다.
sessionStorage
는 페이지를 새로고침해도 데이터가 사라지지 않고,
localStorage
는 브라우저를 다시 실행해도 데이터가 사라지지 않는다.
쿠키를 사용하면 브라우저에 데이터를 저장할 수 있는데, 왜 또 다른 객체를 사용해 데이터를 저장하는 걸까?
쿠키 이외에 다른 방식을 사용하는 이유
sessionStorage
는 현재 떠 있는 탭 내에서만 유지sessionStorage
가 공유된다sessionStorage
에 저장된 데이터는 사라지지 않는다. 하지만 탭을 닫고 새로 열 때는 사라진다