Web Basic · Storage

웹 스토리지를 수명과 민감도로 고르기

localStorage와 sessionStorage는 작은 문자열 상태를 저장하는 도구이며, 저장 기간과 탭 범위가 다르기 때문에 민감 정보 저장소로 쓰면 안 된다.

01

저장 대상

테마, 최근 검색어처럼 유출 위험이 낮고 작은 값을 고른다.

02

수명 선택

탭이 닫히면 사라져야 하면 sessionStorage, 재방문 유지면 localStorage를 쓴다.

03

직렬화

객체는 JSON으로 저장하고 parse 실패와 기본값을 처리한다.

04

동기화

다른 탭 변경은 storage 이벤트로 감지할 수 있다.

localStorage
장기 설정 테마, 언어, 최근 본 필터처럼 재방문에 필요한 값
직접 삭제 전까지 유지
sessionStorage
탭 임시값 폼 draft나 일회성 흐름 상태
새 탭과 공유되지 않음
cookie
서버 전송 요청마다 자동 전송 가능한 작은 값
인증은 HttpOnly cookie 고려
IndexedDB
큰 구조화 데이터 오프라인 데이터와 대량 캐시에 적합
비동기 API

민감 정보 · 용량 · 동기 비용 점검

민감 정보 토큰, 비밀번호, 개인정보를 Web Storage에 저장하지 않는다.
용량 저장 실패 예외를 처리한다.
동기 비용 큰 값을 자주 읽고 쓰지 않는다.
초기값 없는 key와 JSON parse 실패를 복구한다.