![](https://velog.velcdn.com/images/songww1997/post/9bb27b90-c535-47a1-a6bd-32de89de0312/image.png)
- 쿠키(Cookie)와 세션(Session)은 웹사이트에서 사용자의 정보를 유지하기 위해 사용되는 기술입니다. 그러나 이 두 가지 기술은 목적과 동작 방식에서 차이점이 있습니다.
쿠키(Cookie)
- 쿠키는 클라이언트의 브라우저에 저장되는 작은 파일입니다.
- 사용자가 웹사이트에 접속했을 때, 서버에서 쿠키를 생성하고 클라이언트의 브라우저에 저장합니다.
- 다음에 사용자가 같은 웹사이트에 접속하면, 브라우저는 저장된 쿠키를 서버에 전송합니다.
- 쿠키는 만료 날짜를 가지고 있으며, 만료 날짜 이전에는 계속 사용됩니다.
- 쿠키는 보통 사용자의 로그인 정보, 사용자가 선택한 언어 설정, 사용자의 관심사 등을 저장합니다.
세션(Session)
- 세션은 서버에서 관리되는 정보입니다.
- 사용자가 웹사이트에 접속했을 때, 서버에서 세션을 생성하고 사용자의 브라우저에 유일한 세션ID(식별자)를 전송합니다.
- 사용자가 다음에 웹사이트에 접속하면, 브라우저는 세션ID를 서버에 전송합니다.
- 서버는 해당 세션ID에 대한 정보를 찾아 사용자에게 제공합니다.
- 세션은 일반적으로 사용자의 로그인 상태, 장바구니 정보 등을 저장합니다.
⭐ 차이점 (저장 위치, 만료 시점, 보안성, 속도, 활용 분야)
- 쿠키는 클라이언트의 브라우저에 저장되고, 세션은 서버에 저장됩니다.
- 쿠키는 만료 날짜를 가지고 있으며, 세션은 만료 시간을 가지고 있습니다.
- 쿠키는 클라이언트에 저장되기 때문에, 보안에 취약할 수 있습니다. 반면, 세션은 서버에서 관리되기 때문에 상대적으로 안전합니다.
- 쿠키는 사용자의 로그인 정보, 설정 등을 저장하기 위해 사용되는 반면, 세션은 사용자의 로그인 상태, 장바구니 정보 등을 저장하기 위해 사용됩니다.
⭐ 요약
| 쿠키(Cookie) | 세션(Session) |
---|
저장 위치 | 클라이언트(=접속자 PC) | 웹 서버 |
저장 형식 | key-Value | Object |
만료 시점 | 쿠키 저장 시 설정 | 브라우저 종료 시 삭제 |
사용하는 자원(리소스) | 클라이언트 리소스 | 웹 서버 리소스 |
속도 | 세션보다 빠름 | 쿠키보다 느림 |
보안 | 세션보다 안좋음 | 쿠키보다 좋음 |