본문 바로가기

🔥 🔥

LocalStorage, SessionStorage, Cookie

반응형

 cookie 

- cookie는 웹사이트에 의해 유저의 컴퓨터에 놓여지는 작은 텍스트 파일이다.

- 최대 4KB의 용량을 가진 매우 작은 양의 데이터이다.

- 사이트에서 방문한 페이지를 저장하거나 유저의 로그인 정보를 저장하는 등 다양한 방법으로 사용된다.

(유저의 신원확인으로 페이지에서 재인증을 거치지 않는다.)

- HTTP 요청과 함께 서버로 보낸다.

- 문자열만 저장할 수 있다는 제한이 있다.

Seesion cookies - 만료일을 포함하지 않는다. but, 브라우저나 탭이 열려있는 동안에만 저장된다.(은행 웹사이트)

Persistent cookies - 만료일을 포함한다.만료일까지 유저의 디스크에 저장되고 만료일이 지나면 삭제된다.

 

 

 

 

HTML5에는 데이터를 클라이언트에 저장할 수 있는 WebStorage 스펙이 포함된다.

 

- WebStorage는 cookie의 단점을 보완해서 만들었다.

- WebStorage는 key, value의 형태로 데이터로 저장하고 key를기반으로 데이터를 조회하는 패턴이다.

영구저장소 LocalStorage, 임시저장소 SessionStorage 를 따로 두어 데이터의 지속성(데이터 만료)을 구분하여 환경에 맞는 선택이 가능하다.

 

 

 LocalStorage 

-  cookie와의 가장 중요한 차이점 중 하나는 모든 HTTP요청에서 데이터를 주고받지 않고, 클라이언트와 서버간의 전체 트래픽과 낭비되는 대역폭의 양을 줄일 수 있다. (인터넷이 끊어져도 데이터가 삭제되거나 지워지지 않기 때문)

- 최대 5MB의 정보를 저장할 수 있다.

- Persistent cookies처럼 동작한다. javascript 코드를 통해 삭제하지 않으면 데이터는 자동으로 삭제되지 않는다.(영구적)

- 문자열뿐만 아니라 javascript의 primitives와 object도 저장할 수 있다.

 

- 인터넷연결이 잘 유지되지 않는 지역에서 사용하기 유리하다.

- 재무정보와 같은 취약한 데이터는 제대로 저장하거나 보호할 수 없다.

 

 SessionStorage 

- LocalStorage와 다르게 세션이 종료되면 (웹 브라우저를 닫는 경우) 클라이언트에 대한 정보를 삭제한다.

(=> 보안이 필요한 데이터일수록 SessionStorage를 사용하는게 좋다.)

 

 

 

 

'🔥 🔥' 카테고리의 다른 글

Call Stack  (0) 2020.12.17
CORS란?  (0) 2020.12.15
네트워크 기본 지식  (0) 2020.12.09
SSR, CSR과 SPA의 등장배경  (0) 2020.12.09
webpack 이해하기  (0) 2020.12.03