1. 程式人生 > >asp.net對cookie的操作(前臺js和後臺c#程式碼)

asp.net對cookie的操作(前臺js和後臺c#程式碼)

    CSDN廣告是越來越多了,所有部落格筆記不再更新,新網址 DotNet筆記

(一)

後臺C#程式碼對cookie的操作:

看一下程式碼

           ///////////////////////////////-----cookie建立\設定的操作----///////////////////////////////////////////

            Guid gu_id = Guid.NewGuid();                //獲取一個guid,用來放入cookie中,做測試用
            HttpCookie cookie = new HttpCookie("name1");//建立一個名稱為name1的cookie
            DateTime dt = DateTime.Now;                 //獲取當前時間
            TimeSpan ts = new TimeSpan(0, 0, 0, 20, 0); //過期時間為20秒
            cookie.Expires = dt.Add(ts);                //設定過期時間(Expires),指定她的過期時間為(dt+20秒)後過期
            cookie.Value = gu_id.ToString();            //把gu_id放入cookie
            Response.AppendCookie(cookie);              //將一個 HTTP Cookie 新增到(客戶端)內部 Cookie 集合。



            /////////////////////////////-----cookie讀取的操作----////////////////////////////////////////////
            /*此段程式碼也一般單獨寫在其他頁面中,因為cookie是放在客戶端的,"本頁寫\本頁讀"的實際情況不易用到*/

            if (Request.Cookies["name1"] != null)       
            {
               Response.Write(Request.Cookies["name1"].Value+"<br/>");//讀取name為"name1"的cookie的值
            }


            /////////////////////// /////--------cookie的修改操作----////////// /////////////////////////////
            if(Request.Cookies["name1"]!=null)
            {
                Request.Cookies["name1"].Value = Guid.NewGuid().ToString();//為名字為"name1"的cookie設定新的值
                Response.Write(Request.Cookies["name1"].Value);
            }

以上程式碼:兩次讀取同一個cookie,其值分別為:

0de2084e-75f3-4427-9e6f-8f0b5c446847
c2f1afa0-c1e0-41aa-a29b-cb6519524e9e

刪除cookie的方法:

        /// <summary>
        /// 刪除cookie
        /// </summary>
        /// <param name="key">cookie的key</param>
        public void clearCookies(string key) {
            HttpCookie cook = new HttpCookie(key);
            cook.Expires = DateTime.Now.AddDays(-1);
            cook.Values.Clear();
            System.Web.HttpContext.Current.Response.Cookies.Set(cook);
        }


(二)

再看一下前臺js(jquery)對cookie的操作,引入cookie的jquery外掛jquery.cookies.js

對cookies的操作在當訪問一個網站就無時無刻的都伴隨著我們,記錄著我們的一舉一動,並將不危害使用者隱私的資訊,將以儲存,這樣使用者就不用去從新再次操作重複的步驟,這樣大大方便了客戶,也增加了客戶對網站的回頭率。

jquery.cookie.js 提供了jquery中非常簡單的操作cookie的方法。

  • $.cookie('the_cookie'); // 獲得cookie
  • $.cookie('the_cookie', 'the_value'); // 設定cookie
  • $.cookie('the_cookie', 'the_value', { expires: 7 }); //設定帶時間的cookie,預設情況是按天計算的
  • $.cookie('the_cookie', '', { expires: -1 }); // 刪除
  • $.cookie('the_cookie', null); // 刪除 cookie
  • $.cookie('the_cookie', 'the_value', {expires: 7, path: '/', domain: 'jquery.com', secure: true});//新建一個cookie 包括有效期 路徑 域名等

前輩經驗