• 카테고리

    질문 & 답변
  • 세부 분야

    기타 (개발 · 프로그래밍)

  • 해결 여부

    미해결

로컬스토리지 예외처리 부분

21.08.24 21:43 작성 조회수 217

1

로컬스토리지 로드&세이브 부분에 예외처리 하신 부분은 어떤 경우에 예외가 생길 수 있나요?

답변 1

답변을 작성해보세요.

3

안녕하세요! 이연권님!

세이브의 경우에는 특별히 알려진 예외가 존재하는데 특히 모바일을 사용했을 때 발생하는 것으로 알려져 있습니다.

1. 모바일 자체 용량이 가득 차있어 더이상 브라우저가 스토리지 공간을 확보할 수 없는 경우

2. 일부 브라우저에서는 로컬 스토리지의 각 키 값별로 용량 제한이 존재하여 그 한도를 초과하는 경우

3. 옛날 사파리 등에서 개인모드(private mode) 브라우징을 사용한 경우

(3번에 대한 참고글) javascript - QuotaExceededError: Dom exception 22: An attempt was made to add something to storage that exceeded the quota - Stack Overflow

로드 단독으로 알려진 예외에 대해서는 딱히 찾은 것이 없으나, 공통적으로 발생할 수 있는 예외가 리포트되었던 것이 있는데요. 

1. 사용자가 브라우저  설정을 통해 타사 쿠키와 데이터를 사용하지 않음 설정을 하여 로컬스토리지가 비활성화 된 경우

더 자세한 내용이 필요하시다면 해당 아래 글을 참고해주세요!

(참고 MDN) Window.localStorage - Web APIs | MDN (mozilla.org)

(참고 크로뮴 프로젝트) Uncaught SecurityError: Failed to read the 'localStorage' property from 'Window': Access is denied for this document. - The Chromium Projects

해당 프로젝트의 경우에는 작은 규모이기 때문에 굳이 넣어야 하냐고 한다면 넣지 않아도 큰 문제는 없을 것이지만, 버릇처럼 포함시키게 되었습니다.