Cookie的简单用法

时间:2024-04-20 06:43:32

ASP.NET初学者使用cookie的时候会感觉很陌生,在学习的过程中掌握cookie对象的增删改查非常有必要,,下面是我学习的时候经常用到的这些方法

写入和读取Cookie都需要用户Respone对象和Request对象,每一个Cookie对象都包含在Cookies这个键值对的集合中,可以通过索引和键值来操作Cookie

添加cookie(两种方法)

方法1

Response.Cookies["UserName"].Value = "12";//实例化一个名为UserName的值为12
Response.Cookies["UserName"].Expires = DateTime.Now.AddMinutes(1); //设置这个UserName的过期时间为1分钟(重点注意如果不添加过期时间,那么这个过期时间就是“会话”,浏览器关闭就不存在)

方法2:

 HttpCookie cookies = new HttpCookie("UserName","zhanglin");
 cookies.Expires.AddHours(1);
 Response.Cookies.Add(cookies);

删除cookie(方法就是添加同名的Cookie设置过期时间为过去的时间即可)

删除单个Cookie

HttpCookie aCookie= new HttpCookie("RON");
 aCookie.Expires = DateTime.Now.AddDays(-);
 Response.Cookies.Add(aCookie);

删除多个Cookie

; i < Request.Cookies.Count; i++)
        {
            string cookiesName = Request.Cookies[i].Name;
            HttpCookie cookie = new HttpCookie(cookiesName);
            cookie.Expires = DateTime.Now.AddDays(-);
            Response.Cookies.Add(cookie);

        }

获取cookie的值

获取单个

通过Request响应,我们可以获取到Request.Cookies["RON"].根据原本的设定可以将Cookie的值读取出来。cookie.Value可以获取到Cookie保存的所有值。不过个人比较喜欢cookie["UserName"]的方式获取自己想要的cookie的值。

string Username= Request.Cookies["UserName"].Value(新手很容易忘了写.Value)

获取多个  在一个浏览器上面,可能保存了不止一个cookie。但是怎么获取所有的cookie呢。写个循环就出来了。

 ; i < Request.Cookies.Count; i++)
        {
            Response.Write("Cookie[" + i + "]的Name为:" + Request.Cookies[i].Name + "<br/>");
            Response.Write("Cookie[" + i + "]的Value为:" + Request.Cookies[i].Value + "<br/>");
        }

总结:关于Cookies的对象还有DoMain(作用域),Path(路径),有的还需要加密。初学者掌握以上Cookie的使用方法非常必要,明天准备写JS如何操作Cookie

web开发、seo站长交流、xamarin开发实力干货公众号

Cookie的简单用法