웹 기술 기초
브라우저의 localStorage와 Cookie의 차이로 올바른 것은?
- AlocalStorage의 데이터는 요청에 자동으로 붙지 않으며, 같은 출처인 페이지의 JavaScript에서 읽고 써서 사용한다
- BlocalStorage의 데이터도 Cookie와 마찬가지로 같은 사이트로 가는 요청마다 헤더에 넣어져 자동으로 서버로 보내진다
- ClocalStorage에도 HttpOnly 속성을 붙일 수 있으므로, 세션 ID를 두어도 페이지의 스크립트에서는 읽을 수 없다
정답과 해설 보기
정답: A. localStorage의 데이터는 요청에 자동으로 붙지 않으며, 같은 출처인 페이지의 JavaScript에서 읽고 써서 사용한다
localStorage는 출처마다 키와 값의 문자열을 저장하는 브라우저의 저장 공간으로, 유효 기간을 정하는 구조가 없으며 일반적으로 지울 때까지 남습니다. 서버로는 자동으로 보내지지 않으므로, 보내고 싶을 때는 JavaScript로 요청에 넣습니다. Cookie는 하나당 일반적으로 약 4 KB까지로 작고 요청할 때마다 자동으로 보내지는 데 비해, localStorage에는 더 큰 데이터를 둘 수 있습니다. 다만 페이지의 JavaScript에서는 언제든지 읽을 수 있으므로, XSS가 있으면 내용을 도둑맞습니다. 인증에 사용하는 값을 둘 때는 이 위험을 고려해야 합니다.