JavaScript Cookie

2932 ワード

Cookieは、ウェブページのユーザ情報を格納するために使用される.
何がCookieですか
Cookieはいくつかのデータで、あなたのコンピュータのテキストファイルに保存されています.
ウェブサーバがブラウザにウェブページを送信する場合、接続が終了した後、サービス端末はユーザの情報を記録しません.
Cookieの役割は、「クライアントのユーザ情報をどのように記録するか」を解決することである.ユーザがウェブページにアクセスするとき、彼の名前はクッキーに記録できる.ユーザが次のページにアクセスすると、クッキーでユーザアクセス記録を読み取ることができます.
Cookieは、以下のように名前/値ペアで記憶されています.
username=John Doe
ブラウザがサーバからウェブページを要求すると、そのページに属するクッキーがこの要求に追加される.サービスはこのようにしてユーザの情報を取得する.
JavaScriptを使ってCookieを作成します.
JavaScriptは、document.co okie属性を使用してクッキーを作成、読み込み、削除することができます.
//JavaScript  ,   cookie     :
document.cookie="username=John Doe";

//    cookie         (  UTC   GMT   )。     ,cookie          :
document.cookie="username=John Doe; expires=Thu, 18 Dec 2013 12:00:00 GMT";

//     path         cookie    。     ,cookie       。
document.cookie="username=John Doe; expires=Thu, 18 Dec 2013 12:00:00 GMT; path=/";
JavaScriptを使ってCookieを読みだします.
var x = document.cookie;
//document.cookie               cookie,
//    : cookie1=value; cookie2=value; cookie3=value;
JavaScriptを使ってCookieを修正します.
document.cookie="username=John Smith; expires=Thu, 18 Dec 2013 12:00:00 GMT; path=/";
//   cookie     。
JavaScriptを使ってCookieを削除します.
クッキーの削除はとても簡単です.expiresパラメータを設定するだけで、以前の時間になります.以下のようにThu、01 Jan 1970:00 GMT:
document.cookie = "username=; expires=Thu, 01 Jan 1970 00:00:00 GMT";
//        cookie   
Cookie文字列
document.co okieに完全なクッキー文字列が書き込まれても、クッキー情報を再読み取りすると、クッキー情報は名前/値ペアとして示される.
新しいクッキーを設定したら、古いクッキーは上書きされません.新しいクッキーはdocument.co okieに追加されますので、document.co okieを再読み込みすると、以下のようなデータが得られます.cookie 1=value.cookie 2=value
指定されたクッキー値を検索するには、JavaScript関数を作成し、クッキー文字列でクッキー値を検索する必要があります.
JavaScript Cookieの例
まず、訪問者はウェブページを訪問します.彼は自分の名前を記入するように求められます.名前はクッキーに保存されます.訪問者が次のページを訪問する時、彼は歓迎のメッセージを見ます.
JavaScript関数を3つ作成します.
  • cookie値の関数
  • を設定します.
  • cookie値を取得する関数
  • cookie値を検出する関数
  • クッキー値の関数を設定します.
    function setCookie(cname,cvalue,exdays)
    {
      var d = new Date();
      d.setTime(d.getTime()+(exdays*24*60*60*1000));
      var expires = "expires="+d.toGMTString();
      document.cookie = cname + "=" + cvalue + "; " + expires;
    }
    
    クッキー値を取得する関数
    function getCookie(cname)
    {
      var name = cname + "=";
      var ca = document.cookie.split(';');
      for(var i=0; i
    cookie値を検出する関数
    function checkCookie()
    {
      var username=getCookie("username");
      if (username!="")
      {
        alert("Welcome again " + username);
      }
      else 
      {
        username = prompt("Please enter your name:","");
        if (username!="" && username!=null)
        {
          setCookie("username",username,365);
        }
      }
    }