동일한 서버에 재 요청 시 저장된 데이터를 함께 전송상태 정보를 기억할 수 있음세션 관리(Session management): 서버에 저장해야 할 로그인, 장바구니, 게임 스코어 등의 정보 관리개인화(Personalization): 사용자 선호, 테마 등의 세팅트래킹(Tracking): 사용자 행동을 기록하고 분석하는 용도현재 modern storage APIs를 사용해 정보를 저장하는 걸 권장. 모든 요청마다 쿠키가 함께 전송되기 때문에, (특히 mobile data connections에서) 성능이 떨어지는 원인이 될 수 있음.
HTTP 요청을 수신할 때, 서버는 응답과 함께 Set-Cookie 헤더를 전송할 수 있다. 쿠키는 보통 브라우저에 의해 저장되며, 그 후 쿠키는 같은 서버에 의해 만들어진 요청(Request)들의 Cookie HTTP 헤더안에 포함되어 전송된다.
Set-Cookie HTTP 응답 헤더는 서버로부터 사용자 에이전트로 전송됩니다. 간단한 쿠키는 다음과 같이 설정될 수 있습니다.
Set-Cookie: <cookie-name>=<cookie-value>
쿠키의 라이프타임은 두가지 방법으로 정의 가능
현재 세션이 끝날 때 삭제
브라우저는 현재 세션이 끝나는 시점을 정의하며, 어떤 브라우저들은 재시작할 때 _세션을 복원_해 세션 쿠키가 무기한 존재할 수 있도록 함.