이전 게시물과 비교하며 쿠키와 세션을 정리해보려합니다.
cookie
란?먼저 쿠키의 정의부터 살펴보자면,
쿠키란, 특별한 저장공간(클라이언트 / 브라우저)에 있는 정보들입니다.
✅ localstorage
, sessionStorage
와 비슷한 개념이죠.
cookie
의 특징cookie
는 다음과 같은 특징을 가집니다.
cookie
가 쓰이는 과정근데 왜? 이런짓을 할까요?
난 이게 궁금하더라
???: 2번에서 왜 서버가 쿠키를 만들어서 준담? 갑자기?
cookie
가 쓰이는 이유결론부터) 브라우저와 서버가 HTTP 세션통신을 하기 위해서 쓰입니다.
그럼 또 세션이 뭔지 궁금해요. 알아봅시다.
session
이란?구글링을 해보니 세션 / 세션 ID / 세션통신... 너무 헷갈리더라구요.
그러던 와중에 좋은 글을 찾아 정리합니다.
일정 시간동안 같은 사용자(브라우저를 말한다)로 부터 들어오는 일련의 요구를 하나의 상태로 보고 그 상태를 일정하게 유지시키는 기술
여기서 일정 시간이란 방문자가 웹 브라우저를 통해 웹 서버에 접속한 시점으로부터 웹 브라우저를 종료함으로써 연결을 끝내는 시점을 말합니다.
즉, 정리하자면,
세션 : 방문자가 웹서버에 접속해 있는 상태 즉, 서버와 클라이언트가 연결된 상태
라고 볼 수 있겠습니다.
session
이 만들어지는 과정그럼 세션이 만들어지는 과정을 보겠습니다.
브라우저(클라이언트)가 처음으로 요청을 보냅니다.
서버는 요청을 받고, 처음 보는 애니까 새로운 session ID
를 생성합니다.
서버가 브라우저(클라이언트)에게 요청한 정보와 해당 브라우저의 sessionID
를 알려줍니다.
위 그림에서 ABC가 session ID입니다.
서버는 위 그림에서 ABC 공간 에 클라이언트 정보를 저장합니다. 그 장소는 메모리 / DB / 원격저장소 가 될수 있습니다.
session
과 cookie
의 관계💢 그렇다면 쿠키와 세션은 뭔 관계일까?
한번더 정리합시다.
결론) sessionID
를 주고받는데 쿠키를 사용합니다.
sessionID
를 발급해서 클라이언트로 내려주면 클라이언트는 받은 sessionID
를 쿠키 에 저장합니다. sessionID
를 같이 보내주어서 서버가 어떤 클라이언트의 요청인지 알 수 있게 합니다. 🎈 클라이언트의 세션 ID가 저장된 쿠키를 세션 쿠키라고 부르기도 합니다.
session
의 특징session
는 다음과 같은 특징을 가집니다.
위 그림에서 ABC 공간에 저장되는 정보들의 특징입니다.
다정리했당.
잘못된 내용이 있다면 댓글로 알려주세요 :)
출처)
https://88240.tistory.com/190
https://thecodinglog.github.io/web/2020/08/11/what-is-session.html