쿠키와 세션 : til

원녕·2024년 2월 1일
0

TIL

목록 보기
5/21

obsidian://open?vault=Documents&file=Spring%2F%EC%BF%A0%ED%82%A4%EC%99%80%20%EC%84%B8%EC%85%98

쿠키(Cookie)와 세션(Session)의 개념:


  • 쿠키: 클라이언트 측에 저장되는 작은 데이터 조각으로, 브라우저에 의해 관리됩니다. 쿠키는 사용자의 컴퓨터에 저장되어 서버와 클라이언트 간의 상태를 유지하고 정보를 기억하는 데 사용됩니다.
  • 세션: 서버 측에 저장되는 데이터로, 클라이언트와 서버 간의 상태를 유지하기 위해 사용됩니다. 세션은 일반적으로 서버에서 유지되며, 클라이언트는 세션 식별자를 쿠키로 받아서 사용합니다.

![[Pasted image 20240129111119.png]]


상태 유지 및 정보 전송:

  • 쿠키 사용: 쿠키는 클라이언트 측에 저장되기 때문에, 클라이언트에서 서버로 정보를 전송할 수 있습니다. 이는 주로 사용자 기본 설정, 로그인 정보, 사용자 추적 등에 활용됩니다.
  • 세션 사용: 세션은 서버 측에서 유지되므로 더 안전한 방식으로 상태를 유지할 수 있습니다. 주로 사용자의 인증 정보와 같은 민감한 데이터를 저장하는 데 사용됩니다.

![[Pasted image 20240129111247.png]]

이해를 돕기 위한 쉬운 그림 첨부

![[Pasted image 20240129111550.png]]

  1. 로그인 요청을 하면 db가 사용자 데이터와 일치하는지 확인한다.
  2. 사용자 정보와 요청된 정보가 일치하면 세션저장소에 세션을 하나 생성한다.
  3. 세션 저장소는 서버에게 Session Id를 발급한다.
  4. 서버는 session Id를 포함하고있는 쿠키를 클라이언트의 컴퓨터에 저장시킨다.
  5. 쿠키를 가진 사용자(로그인 성공한 사용자)가 서버에 데이터를 요청했을 경우에는 세션 저장소를 통해서 쿠키를 검증한다.
  6. 검증에 성공하면 세션 정보를 가져와서 요청한 데이터의 타입에 맞게 응답해준다.

쿠키와 세션의 차이점:


![[Pasted image 20240129115338.png]]


profile
메타인지하는 개발자

0개의 댓글