HTTP 프로토콜은 비연결지향과 상태정보 유지 안함 이라는 특징을 가지고 있어, 서버와 클라이언트가 통신시 연속적으로 이어지지 않고 한 번 통신 되면 끊어지게 되며, 상태정보가 유지되지 않게됩니다. 이러한 문제를 해결하기 위해 사용하는 것이 cookie와 session입니다.
쿠키는 사용자의 웹 브라우저에 저장되는 작은 데이터 조각입니다. 클라이언트(브라우저)와 서버 간의 상태를 유지하는 데 사용되며, HTTP는 기본적으로 상태를 유지하지 않기 때문에 이를 보완하기 위해 사용합니다. 쿠키는 사용자 정보를 저장하고 이를 서버에 전달하여 사용자를 식별하거나 사이트의 기본 설정(언어, 테마 등)을 유지하는 데 사용됩니다.
Set-Cookie
헤더 사용) 이후 요청마다 브라우저는 해당 쿠키를 서버에 보내게 됩니다.1 ) 클라이언트 측 저장
쿠키는 클라이언트(사용자의 웹 브라우저)에 저장됩니다. 서버는 Set-Cookie
라는 HTTP 헤더를 사용해 쿠키를 클라이언트에 설정할 수 있습니다. 이렇게 설정된 쿠키는 사용자가 웹 페이지를 다시 방문할 때마다 서버에 자동으로 전송됩니다.
2 ) 작은 크기
쿠키의 크기는 일반적으로 하나당 약 4KB로 제한됩니다. 때문에 너무 큰 데이터를 쿠키에 저장하기는 어렵고, 주로 사용자 식별 정보와 같은 간단한 데이터를 저장하는 데 사용됩니다.
3 ) 만료 기간 설정
쿠키는 만료 기간(유효기간)을 설정할 수 있습니다. 만료 기간은 Expires
나 Max-Age
속성으로 설정하며, 이 속성에 따라 쿠키가 자동으로 삭제됩니다.