cookie

来源:互联网 发布:淘宝商城加盟 编辑:程序博客网 时间:2024/06/05 04:57


cookie的存储:存储在客户端浏览器内存中,或者以文件形式存在客户端硬盘中。

写入cookie的方式:Cookie可以是服务器写入或者是浏览器自身写入即通过JS或者C#代码写入


JS操作cookie :

在JS里操作cookie可以用Jquery的插件“jquery.cookies”,会使JS操作cookie更加的方便

       // 写入cookie

       //参数: key value 过期时间

        $.cookie("loginName", loginName, { expires: 7 });

      

        // 获取cookie

         if ($.cookie("loginName")) {
                        alert('有此cookie');
                    }

         

            // 清除cookie  也有两种方式  ①:设置过期时间;②:赋空值

            // 设置过期时间

             $.cookie("loginName", loginName, { expires: -1 });

             // 赋空值清除cookie

             $.cookie("loginName", null);


C#代码操作cookie:

        // 写入cookie

        HttpCookie cookie = new HttpCookie("name", "你妹");


        // 如果cookie设置了过期时间 则cookie会存在客户端的硬盘上,否则存在客户端浏览器中
        cookie.Expires = DateTime.Now.AddDays(7);

        // 主域的cookie是能被所有子域访问的
        // 而子域想让主域访问自己客户端的cookie,则需要在子域中将Domain属性设置为主域名 (Domain指向哪个域                //名,哪个域名就能够访问)
        //cookie.Domain = "www.baidu.com";
        Response.AppendCookie(cookie );
        //或者:Response.Cookies.Add(cookie );


       // 获取cookie
        if (Request.Cookies["name"] != null)
        {
            Response.Write(Request.Cookies["name"].Value);
        }  

   

     // 清除cookie

     //// 清除cookie 只能清除生成到响应流中的cookie 并不能清除客户端的cookie
        //Response.Cookies.Clear();
        // 真正的清除客户端cookie ①设置cookie的过期时间;②把客户端的cookie设置null
        int cookieCount = Request.Cookies.Count;
        for (int i = 0; i < cookieCount; i++)
        {
            // 方法一: 设置过期时间
            HttpCookie cookie = new HttpCookie(Request.Cookies[i].Name);
            cookie.Expires = DateTime.Now.AddDays(-1);
            Response.AppendCookie(cookie);


            // 方法二给cookie设置空值
            HttpCookie cookie = new HttpCookie(Request.Cookies[i].Name,null);
            Response.AppendCookie(cookie);
        }



原创粉丝点击