쿠키(Cookies), 세션(Session), 로컬 스토리지(Local Storage)는 모두 클라이언트 측에서 데이터를 저장하고 관리하는 웹 스토리지 기술입니다. 그러나 각각의 특징과 용도가 다릅니다.
쿠키(Cookies): 클라이언트의 로컬 브라우저에 저장되는 키-값 쌍의 작은 데이터 파일입니다. 쿠키는 서버에서 클라이언트에게 특정 기간 동안 인증 정보나 사용자 선호 설정 등을 저장하기 위해 사용됩니다. 쿠키는 브라우저에서 만료일이 지나면 자동으로 삭제됩니다.
세션(Session): 웹 서버에서 클라이언트에게 할당되는 고유한 ID입니다. 이 ID를 사용하여 서버는 클라이언트의 상태를 추적하고, 필요한 정보를 클라이언트에게 전달합니다. 세션은 쿠키와 달리 서버 측에서 관리되며, 일반적으로 인증과 같은 보안적인 목적으로 사용됩니다.
로컬 스토리지(Local Storage): HTML5에서 추가된 웹 스토리지 기술로, 클라이언트 측에서 데이터를 로컬에 저장하고 관리할 수 있습니다. 로컬 스토리지는 브라우저에 대해 지속적으로 유지되며, 서버와의 통신 없이 클라이언트 측에서 데이터를 유지할 수 있습니다. 일반적으로 사용자 환경 설정이나 캐시 데이터를 저장하기 위해 사용됩니다.
쿠키(Cookies) | 세션(Session) | 로컬 스토리지(Local Storage) | |
---|---|---|---|
저장 위치 | 클라이언트의 로컬 브라우저 | 웹 서버 | 클라이언트의 로컬 브라우저 |
데이터 크기 | 4KB 이하 | 일반적으로 2MB 이하 | 일반적으로 5MB 이하 |
만료 시점 | 브라우저 종료 후 지정 기간까지 | 클라이언트의 세션이 종료될 때까지 | 수동 삭제 또는 만료 일자 설정 가능 |
서버에서의 처리 | 클라이언트에서 자동으로 전송 | 서버에서 클라이언트에게 할당됨 | 클라이언트에서 자동으로 전송 |
보안성 | 비교적 낮음 | 상대적으로 높음 | 비교적 낮음 |
사용 예시 | 인증 정보, 사용자 설정 등 | 사용자 로그인 정보, 상태 정보 등 | 캐시 데이터, 사용자 설정 등 |
1.만료 시점 인데
세션 스토리지는 로컬 스토리지와 유사하지만, 데이터가 브라우저 세션 중에만 유지된다는 차이점이 있습니다. 브라우저 세션이 종료되면 세션 스토리지에 저장된 데이터는 자동으로 삭제됩니다. 이를 통해 브라우저 세션 중에만 필요한 데이터를 보관하고, 보안적인 측면에서도 더 안전한 방식으로 데이터를 저장할 수 있습니다.
세션 스토리지는 일반적으로 브라우저 창이 열려있는 동안 데이터를 유지하고, 브라우저 창을 닫으면 데이터가 자동으로 삭제됩니다. 세션 스토리지는 JavaScript를 사용하여 쉽게 조작할 수 있으며, 일반적으로 캐시 데이터나 세션 데이터를 저장하는 데 사용됩니다.