본문 바로가기

개발 팁

쿠키와 세션의 차이

쿠키(Cookie)와 세션(Session)은 모두 웹 서버와 클라이언트 간의 상태 유지를 위한 기술입니다. 하지만 둘은 목적과 사용 방법이 약간 다릅니다.

쿠키는 클라이언트 측에서 저장되는 작은 데이터 파일입니다. 서버가 클라이언트에게 쿠키를 전송하면 클라이언트는 해당 쿠키를 브라우저에 저장합니다. 이후 같은 서버에 요청을 보낼 때마다 브라우저는 해당 쿠키를 서버로 전송합니다. 쿠키는 클라이언트의 로그인 정보나 사용자의 선호도, 장바구니 등을 저장할 때 사용됩니다. 쿠키는 브라우저에서 만료 날짜가 지나면 자동으로 삭제됩니다.

세션은 쿠키와 마찬가지로 웹 서버와 클라이언트 간의 상태 유지를 위한 기술입니다. 하지만 쿠키와는 달리 서버 측에서 유지됩니다. 세션은 클라이언트가 서버에 요청을 보낼 때마다 서버가 클라이언트에게 고유한 세션 ID를 부여하고, 이 ID를 클라이언트에게 쿠키를 통해 전송합니다. 클라이언트는 이 세션 ID를 쿠키에 저장하고, 이후 요청에서 세션 ID를 서버로 전송합니다. 서버는 이를 통해 클라이언트의 세션 정보를 유지하고, 클라이언트가 로그인하거나 서비스를 이용할 때마다 해당 세션 정보를 참조합니다. 세션은 클라이언트가 브라우저를 종료하거나 일정 시간이 지나면 삭제됩니다.

요약하면, 쿠키는 클라이언트 측에서 저장되고, 세션은 서버 측에서 유지됩니다. 쿠키는 클라이언트가 요청을 보낼 때마다 자동으로 전송되고, 세션은 클라이언트가 요청 시 서버에서 세션 ID를 받아와야 전송할 수 있습니다. 쿠키는 만료 날짜가 지나면 자동으로 삭제되고, 세션은 클라이언트가 브라우저를 종료하거나 일정 시간이 지나면 삭제됩니다.

'개발 팁' 카테고리의 다른 글

스프링에 restAPI에서 uri 역활  (0) 2023.03.20
MVC 패턴과 restAPI의 차이점  (0) 2023.03.20
API , REST API 차이  (0) 2023.03.10
JPA @Inheritance , @MappedSuperclass , @Embedded, @Embeddable  (0) 2023.02.24
Redirect 와 Forward  (0) 2023.02.24