Netscape Cookie

Netscape Cookie

[4] Cookie ははじめに Netscape Navigator で実装され、開発者向けに仕様案が公開されました。 Cookie は後に IETF で標準化されて RFC となっていましたが Netscape の仕様と互換性が無いためほとんど無視され、長らく Netscape の公開した仕様書 (と実装) が事実上の標準になっていました。 2011年になってようやく Netscape の仕様ベースの Cookie の定義 RFC 6265 が発行されています。

目次

  1. 仕様書
  2. BNF
  3. 鯖からクライアントへの Cookie の設定
  4. クライアントから鯖への Cookie の通知
  5. メモ

仕様書#

[2]

Preliminary Specification - Use with caution (予備仕様—心して使うべし)

と書かれていましたが、この仕様が現在まで事実上の標準となっています。

BNF#

Netscape の仕様を元に作成
 http-response /= Set-Cookie
 http-request /= Cookie

 Set-Cookie = "Set-Cookie:" set-cookie-content
 set-cookie-content = [FWS] cookie-pair
                      *([FWS] ";" [FWS] parameter) [FWS] [";"] [FWS]
 Cookie = "Cookie:" [FWS] cookie-pair
        *([FWS] ";" [FWS] cookie-pair) [FWS]
 parameter = expires-parameter / domain-parameter
           / path-parameter / secure-parameter
 
 cookie-pair = name "=" value
 expires-parameter = "expires=" cookie-date
 domain-parameter = "domain=" ["."] dot-atom
 path-parameter = "path=" abs_path
 secure-parameter = "secure"
 
 name = 1*cookie-char
 value = *cookie-char
 cookie-date = <Wdy, DD-Mon-YYYY HH:MM:SS GMT>
 abs_path = <RFC 2616 abs_path>
 
 cookie-char = <a sequence of characters excluding semi-colon, 
                comma and white space>

#

[6]

以上の例は Netscape の仕様から。日付の年は実際には4桁じゃないと いけないらしい。

メモ#

[3] 日本語訳 <http://www.futomi.com/lecture/cookie/specification.html>

他にも訳があったけど Not found。