Koras02
Koras02코딩웹
Koras02
전체 방문자
오늘
어제
  • 분류 전체보기 (299)
    • 백엔드 (59)
      • nestjs (2)
      • Ruby (3)
      • PostgresQL (11)
      • MySQL (5)
      • Haskell (7)
      • Koa (3)
      • Java (3)
      • Python (5)
      • Rust (5)
      • MongoDB (2)
      • PHP (3)
      • Spring Boot (1)
      • redis (5)
      • deno (2)
    • 웹서버 (3)
      • nginx (1)
      • Apache (2)
      • Google Web Server (0)
    • 모바일개발 (5)
      • Figma (0)
      • React Native (2)
      • swift (0)
      • Flutter (3)
      • Kotlin (0)
    • 프론트 엔드 (158)
      • HTML (34)
      • CSS (7)
      • Javascript (35)
      • Angular (0)
      • Typescript (2)
      • React (58)
      • Vue (2)
      • GIT (6)
      • GraphQL (1)
      • Doker (4)
      • Go (8)
      • svelte (1)
      • gatsby (0)
    • etc. (47)
      • Notion (0)
      • TIL (24)
      • Algorithm (17)
      • Algorithm 개념 정리 (2)
      • Wiki (3)
      • Official document (1)
    • 웹개념 (12)
    • 변수정리 (1)
    • VSCode (2)
    • 포트폴리오 분석 (2)
      • React (2)
    • os (5)
      • 윈도우 (4)
      • Mac (0)
      • 가상머신 (0)
      • linux (1)
    • 응용프로그램언어 (2)
      • C (2)
      • C++ (0)
      • C# (0)
    • 블로그 운영관련 (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록
글쓰기

공지사항

  • [공지사항] 개발 이슈나 공식문서 업데이트 업로드 예정입니⋯

인기 글

태그

  • go
  • Flutter
  • mysql
  • 데이터 타입
  • koa
  • CSS
  • 프로그래머스
  • redis
  • 문자열
  • 알고리즘
  • Java
  • PostgreSQL
  • html5
  • 하스켈
  • javascript
  • Rust
  • html
  • Haskell
  • React
  • Til

티스토리

최근 댓글

최근 글

250x250
hELLO · Designed By 정상우.
Koras02

Koras02코딩웹

Cookie vs LocalStorage vs SessionStorage
웹개념

Cookie vs LocalStorage vs SessionStorage

2021. 10. 12. 14:01
728x90

1web logo

1.Cookie(쿠키)

  • 쿠키는 클라이언트에 대한 정보를 이용자의 PC에 있는 하드디스크에 보관하기 위해 웹사이트에서 클라이언트
    웹 브라우저에 전송하는 정보이다.

1-1. Cookie의 특징

  • 쿠키를 웹 사이트에서 설정하면 모든 웹 요청은 쿠키 정보를 포함하여 서버로 전송된다.
  • 쿠키는 개수와 용량에 있어 제한을 걸어두고 있다. 하나의 사이트에서 저장 가능한 최대 쿠키수는 20개이며,  
    하나의 사이트에서 저장 가능한 최대 쿠키 크기는 4KB로 제한되어 있다.

1-2. Cookie의 장/단점

  • 장점
    • 대부분의 브라우저에 지원이 다 된다.
  • 단점
    • api가 한번 더 호출되면서 서버에 부담이 증가된다.

 

2. WEB STORAGE (웹 스토리지)

  • HTML5에는 웹 사이트의 데이터를 클라이언트에 저장할 수 있는 새로운 자료구조인 WebStorage 스펙이
    포함되어 있다.
  • Web Storage의 개념은 키/값 쌍으로 데이터를 저장하고  키를 기반으로 데이터를 조회하는 패턴이다.
  • 그리고 영구저장소(LocalStorage)와 임시저장소(SessionStorage)를 따로 두어 데이터를 지속성을 구분할 수 있어
    응용 환경에 맞는 선택이 가능하다.
  • 쿠키와 거의 차이가 없어 보일지라도 몇 가지 쿠기의 단점을 극복하는 개선점이 도입되었다.

2-2. WebStorage의 특징

  • 저장된 데이터가 클라이언트에 존재할 뿐 서버로 전송은 이루어지지 않는다.이것은 네트워크 트래픽 비용을 줄여 준다는 주요 장점이 된다.
  • WebStorage는 용량 제한이 없다.
  • 만료기간의 대한 설정이 없다. 즉 한번에 저장한 데이터는 영구적으로 존재한다는 뜻.
  • 데이터의 지속성과 관련해 두 가지 용도로 저장이 가능하다. (LocalStorage, SessionStorage)

 

3. LocalStorage

  • LocalStorage는 저장한 데이터를 지우지 않는 이상 영구적으로 보관이 가능하다. 도메인마다 별도로 로컬 스토리지가 생성이 된다는 것이다. Windows 전역 객체의 LocalStorage라는 컬렉션을 통해 저장/조회가 이루어진다.

3-1. LocalStorage의 특징

  • 브라우저를 종료한다해도 데이터는 보관되며 다음번에 접속하더라도 그 데이터를 사용할 수 있다.
  • 저장 용량 한도는 3가지 중에서 가장 높다.

3-2. LocalStorage의 장/단점

  • 장점
    • 서버에 불필요한 데이터 저장을 하지않고, 용량이 크다.
  • 단점
    • HTML4만 지원되는 브라우저에서는 지원이 되지 않는다.

3-3. LocalStorage 저장 / 조회 / 삭제하는 법

localStorage.setItem("access_token", "jungho") // 저장
localStorage.getItem("access_token"); // 조회: jungho
localStorage.removeItem("acess_token"); // access_token 으로 설정된 키로 접근해 삭제
localStorage.clear(); // 전체 삭제

 

4. SessionStorage

  • SessionStoarge는 세션 종료 시(브라우저를 닫는 경우)클라이언트에 대한 정보가 삭제된다.
    SessionStorage는 windows 전역 객체의 SessionStorage라는 컬렉션은 통해 저장/조회가 이루어진다.

4-1. SessionStorage의 특징

 - 데이터가 지속적으로 보관되지 않는다. 이는 마치 브라우저 기반 세션 쿠기와 그 성질이 비슷한데,

현재 페이지가 브라우징 되고 있는 브라우저 컨텍스트 내에서만 데이터가 유지된다.

4-2. SessionStorage의 장/단점

+ 장점 : LocalStorage와 같음. 단지 기능 차이

- 단점: LocalStorage와 같음. 단지 기능 차이

 

4-3. SessionStorage 저장/조회/삭제하는 법

sessionStorage.setItem("access_token", "Jungho"); // 저장
sessionStorage.getItem("access_token"); // 조회 : Jintae
sessionStorage.removeItem("access_token") | // access_token 으로 설정된 키로 접근해 삭제
sessionStorage.clear(); // 전체 삭제

5. 어떤 상황에서 사용하는게 좋을까?

- 팝업 창 : Cookie

- 자동 로그인 : LocalStorage

- 입력 폼 정보 : SessionStorage

- 비로그인 장바구니 : SessionStorage

 

※ 참조

 

[TIL] Cookie vs LocalStorage vs SessionStorage

1. Cookie(쿠키) ◎ 쿠키는 클라이언트에 대한 정보를 이용자의 PC의 하드디스크에 보관하기 위해서 웹 사이트에서 클라이언트의 웹 브라우저에 전송하는 정보이다. 1-1. Cookie의 특징  - 웹 사이트

jindev-t.tistory.com

 

'웹개념' 카테고리의 다른 글

CORS란 무엇인가?  (0) 2021.10.12
동기와 비동기 개념과 차이  (1) 2021.10.09
[Server] Cache(캐시)란?  (0) 2021.10.09
    '웹개념' 카테고리의 다른 글
    • [HTTP] HTTP 상태코드
    • CORS란 무엇인가?
    • 동기와 비동기 개념과 차이
    • [Server] Cache(캐시)란?
    Koras02
    Koras02
    현재 사용중인 언어 - next-js,react,vue, typescript

    티스토리툴바