Cookieメモ

/web/javascript

Note: この記事は、3年以上前に書かれています。Webの進化は速い!情報の正確性は自己責任で判断してください。

前回まとめたDateオブジェクトを踏まえたうえで、Cookieのまとめ。ソースはQuirksMode

記述例
document.cookie = 'NAME1=testcookie; expires=Thu, 1 Jan 2030 00:00:00 GMT; path=/; secure'
書式
  1. 名前と値をセットで記述する(name1=value1; name2=value2; ...)
  2. セミコロンと半角スペースで区切る
  3. 有効期限は決められたフォーマットで記述する(GMT/UTC)
  4. 「=」や「;」などの特殊記号や日本語文字を使用する場合、エンコードして記録する

確認用

  1. alert(document.cookie);

エンコードとデコード

  1. xx = escape(xx);
  2. xx = unescape(xx);

解説

NAME=値
必須。好きな名前に好きな値を指定できる。
expires=値
書式は「Thu, 1-Jan-2030 00:00:00 GMT」。この書式はJSだと「Date.toGMTString()」メソッドで作れる。過去の値を指定した場合、Cookieは削除される。
省略するとブラウザを終了させるまでが有効期限になる。
path=値
path=/hoge」と指定すると、「/hoge」にマッチするすべてのページに対してCookie情報が送られる。
省略時は、Cookieを設定したページのパス名部になる
domain=値
Cookie を発行する Webサーバーの名前。
省略した場合は Webサーバー名(www.hogehoge.com など)になる。
secure
記述しておくと、サーバーとの接続がセキュアである時のみ、Cookie情報が送信されるようになる。

参照元: QuirksMode, Cookie

Note: スパム対策が面倒なので、コメント投稿を廃止しました。以前のコメントは残します。
ご意見・ご要望はtwitter@sigwygかはてブコメントにて。