본문으로 건너뛰기

Cookie

HTTP/1.0 200 OK
Set-Cookie: <cookieName1>=<cookieValue1>[; <option>[; <option>]]
Set-Cookie: <cookieName2>=<cookieValue2>
...
  • <option>
    • Expires=<date>
    • Max-Age=<seconds>: <=0 이면 쿠키가 삭제됩니다
      • Expires 또는 Max-Age를 설정하지 않으면 세션 쿠키가 되어 클라이언트 종료시 삭제됩니다
    • HttpOnly: 활성화 하면 JavaScript의 document.cookie API를 통해 쿠키에 접근할 수 없습니다
    • Secure: 활성화 하면 HTTPS 프로토콜을 사용할 때만 Cookie를 헤더에 추가할 수 있습니다(localhost 제외)
    • Domain=<domain>
      • 명시적으로 지정하지 않으면 브라우저는 프론트엔드 Host를 기본 값으로 사용합니다
      • 명시적으로 지정하면 하위 도메인을 포함한 모든 도메인에서 Cookie를 헤더에 추가할 수 있습니다
    • Path=<prefix>: 설정하면 Request 헤더의 경로와 prefix가 매칭되어야 Cookie를 헤더에 추가할 수 있습니다
    • SameSite=None|Lax|Strict
      • site: 유효 최상위 도메인(eTLD) + 1을 의미합니다
      • None: 모든 요청에 대해 쿠키가 전송됩니다(Secure 옵션을 활성화해야 함)
      • Lax: Same-site가 아니더라도 몇가지 예외적인 요청에 대해 Cookie를 헤더에 추가할 수 있습니다
      • Strict: Same-site인 경우에만 Cookie를 헤더에 추가할 수 있습니다
GET /test HTTP/1.1
Host: wiki.loliot.net
Cookie: <cookieName1>=<cookieValue1>; <cookieName2>=<cookieValue2>
...