쿠키(Cookie), 세션(Session), 그리고 웹스토리지(Web Storage)란?

셔노·2022년 9월 29일
0

개발공부

목록 보기
7/12

  1. 사용하는 이유 : 쿠키를 사용하는 이유는 HTTP 요청은 상태를 가지고 있지 않기 때문
  2. 쿠키에 정보를 담아서 보내면 서버는 쿠키를 통해 파악할 수 있다.
  3. 쿠키는 보통 세션 관리를 통해 로그인, 접속시간, 장바구니 등에 활용
  4. 사용자별로 다른 정보를 표시하는 등 개인화가 가능하고 사용자의 행동패턴을 분석 가능하기 때문에 더 중요한 개념이 되었다.
  5. 쿠키는 Set-Cookie:키=값;옵션을 사용한다.
  6. Ex) Set-Cookie:name(네임이라는 키에)=kante(kante라는 값이 들어간다.)
  7. 단점 : Persistent Cookie의 경우 사용자의 하드디스크에 저장되기 때문에 공공pc에서의 쿠키사용은 개인정보 유출이 될수있기때문에 조심해야된다.

세션 (Session)

  1. Session ID를 식별자로 데이터를 사용자 브라우저의 쿠키가 아닌 접속한 서버의 DB에 정보를 저장
  2. 세션의 경우 메모리에 저장하기 때문에 브라우저가 종료되면 사라진다
  3. 쿠키의 트래픽 문제와 보안상 취약점을 해결하기 위해 사용
  4. 단점1 : 서버의 리소스를 사용하기 때문에 세션을 많이 쓸 경우 서버에 부하가 생기게 될 수 있다.
  5. 단점2 : 사용자 인증, 로그인에 많이 쓰이는데 유저의 수가 많아질경우 서버 램이나 DB에 무리를 줄 수 있다

웹스토리지 (Web Storage)

  1. 데이터를 클라이언트로 저장할 수 있는 자료구조인 Web Storage 스펙이 포함되어 있다
  2. Web Storage는 키/값(key-value) 형태로 데이터를 저장해서 key를 기준으로 조회하는 패턴
  3. 영구 저장소(Local Storage)와 임시 저장소(Session Storage)를 따로 두어 데이터의 지속성을 구분할 수 있기 때문에 환경에 맞게 선택하여 사용할 수 있다.
  4. 웹 환경에서 사용하는 쿠키(Cookie)와 매우 유사하지만 쿠키의 단점을 극복하는 개선점 등이 추가되어 도입
  5. 웹 환경에서 쿠키는 유효하고 많이 쓰이고 있다.
  6. 웹 스토리지의 등장이 절대 쿠키를 배제한다는 의미는 아니다.
profile
초보개발자

0개의 댓글