STUDY/Python

쿠키&세션 | 둘의 차이점은? | HTTP의 비연결성 및 무상태성 특징을 보완한 기술

nicesugi 2022. 5. 8. 16:32

 

 

HTTP의 비연결성 및 무상태성 특징을 보완한 기술 : 쿠키와 세션

비연결성 : HTT는 요청에 대한 응답을 처리하게 되면 연결을 끊어버림

무상태성 : 연결이 끊기면 이전의 상태 정보 및 현재 통신 상태가 남아있지 않음 

 

 

쿠키(웹 쿠키, 브라우저 쿠키)는 서버가 사용자의 웹 브라우저에 전송하는 작은 데이터 조각

브라우저는 데이터 조각을 저장해 놓았다가, 동일한 서버에 재 요청시 저장된 데이터를 함께 전송.

쿠키는 두 요청이 동일한 브라우저에서 들어왔는지 아닌지를 판단할 때 주로 사용

결과적으로 사용자의 로그인 상태를 유지할 수 있음 !!

 

 

쿠키의 목적 세 가지 

1. 세션 관리 : 서버에 저장해야 할 로그인, 장바구니, 게임 스코어 등의 정보관리

2. 개인화 : 사용자 선호, 테마 등의 세팅

3. 트래킹 : 사용자 행동을 기록하고 분석



사용예시 : 로그인시 팝업창  "아이디와 비밀번호 저장하시겠습니까" | "오늘 이 창을 다시 보지 않기"

 

 

HTTP 쿠키에 대해 알고 싶다면 클릭 ! 

 

HTTP 쿠키 - HTTP | MDN

HTTP 쿠키(웹 쿠키, 브라우저 쿠키)는 서버가 사용자의 웹 브라우저에 전송하는 작은 데이터 조각입니다. 브라우저는 그 데이터 조각들을 저장해 놓았다가, 동일한 서버에 재 요청 시 저장된 데

developer.mozilla.org


세션 

사용자가 웹브라우저를 통해 웹서버에 접속한 시점부터 웹브라우저를 종료하여 연결을 끝내는 시점까지

사용자로부터 들어오는 일련의 요구를 하나의 상태로 보고 그 상태를 유지하는 기술

쉽게 말해서 사용자가 웹서버에 접속해 있는 상태를 세션이라고 함

 

 

사용예시 : 화면을 이동해도 로그인이 풀리지 않고 로그아웃하기 전까지 유지

 

 

세션에 대해 더 알고 싶다면 클릭 ! 

 

Window.sessionStorage - Web API | MDN

sessionStorage 읽기 전용 속성은 현재 출처 세션의 Storage 객체에 접근합니다. sessionStorage는 localStorage와 비슷하지만, localStorage의 데이터는 만료되지 않고, sessionStorage의 데이터는 페이지 세션이 끝날

developer.mozilla.org


  • 저장 위치
    • 쿠키 - 로컬PC
    • 세션 - 서버
  • 저장 방식 
    • 쿠키 - text
    • 세션 - object
  • 만료 시점(라이프 사이클) :
    • 쿠키 - 만료기간이 있지만, 파일로 저장되기 때문에 브라우저를 종료해도 정보 유지 될 수 있음
                만료기간 정해도 쿠키 삭제할 때까지 유지 가능
    • 세션 - 만료기간 정할 수 있지만, 브라우저가 종료되면 만료기간 상관없이 삭제
  • 속도 : 쿠키 > 세션
  • 보안 : 쿠키 < 세션

 

 

세션이 사용하고 저장하는 서버 자원에 한계가 있고 속도가 느려질 수 있기 때문에 쿠키와 병행 사용함

서버 자원 낭비를 방지하고 웹사이트 속도를 높일 수 있음

 

 

반응형