.Net_Cookie

protected void Page_Load(object sender, EventArgs e)
    {
        //从客户端请求中获取cookie
        for(int i=0;i<this.Request.Cookies.Count;i++)
        {
            Response.Write(Request.Cookies[i].Value);
        }


        //怎么往客户端写Cookie
        //Response.Cookies.Add();
        //Cookie也是存在客户端浏览器上的 Key-Value集合
        var cookie =  new HttpCookie("path", "牛人8882!");

        //设置过期时间就会将Cookie直接存储到硬盘上
        //不设置过期时间,则只存到客户端浏览器所在机器的内存里面(其实就是浏览器的进程里面)
        cookie.Expires = DateTime.Now.AddDays(1);

        //当前这个cookie只给 Cookie文件夹下的页面使用
        cookie.Path = "/WebSiteDemo2/Cookie";

        //如果想让子域的cookie让主域也能访问,则设置如下
        cookie.Secure = false;

        //主域的cookie是能被所有的子域访问到的。
            //而子域想让主域访问到自己的写到客户端的Cookie,则需要将Domain属性设置为主域名( 默认情况下子域能访问主域的Cookie,主域不能访问子域的Cookie)
        //cookie.Domain = "www.baidu.com"
        Response.AppendCookie(cookie);

        //这时候只是 将Cookie生成到响应流里面的Cookie都给干掉了,只是不生成了响应的Cookie头部
        //Response.Cookies.Clear();

        //清空Cookie
    }

清空Cookie,要设置其过期才算是把浏览器的Cookie清空

protected void Page_Load(object sender, EventArgs e)
    {
        int cookieCount = this.Request.Cookies.Count;

        //从客户端请求中获取cookie
        for (int i = 0; i < cookieCount; i++)
        {
            //创建一个新的cookie,只不过名字跟请求来的一样
            HttpCookie cookie = new HttpCookie(Request.Cookies[i].Name);

            //在服务器端不能直接清空浏览器的Cookie
            cookie.Expires = DateTime.Now.AddHours(-1);


            Response.Cookies.Add(cookie);
        }


    }

 

 

posted @ 2013-02-18 11:30  陆俊杰_iOS  阅读(277)  评论(0编辑  收藏  举报

版权信息:©Copyright © 2010-2050 陆俊杰的博客