zoukankan      html  css  js  c++  java
  • 关于Cookies

    (一)用法:
    response.cookies用来设置cookies  
    request.cookies用来读取cookies  

    HttpCookie cookie = new HttpCookie["zh"];
    cookie.Value = "中华人民共和国";
    Response.AppendCookie(cookie);

    取出Cookie值也很简单

    HttpCookie cookie = Request.Cookies["zh"];
    cookieValue = cookie.Value;
    (二)问题处理:
    1、在应用程序中有时会出现cookie混乱的问题,主要问题在RemoveCookie上,解决办法:
           /// <summary>
           /// 移除cookie,将Request和Response两个集合中的都清理
           ///  Code by KentLi
           /// </summary>
           /// <param name="cookieName">cookie名称</param>
          public void RemoveCookie(string cookieName)
          {
                  HttpCookie Cookie =  HttpContext.Current.Request.Cookies[cookieName];
                  if (Cookie != null)
                  {
                        //过期时间设置为立即过期       
                         Cookie.Expires=  DateTime.Now;
                         HttpContext.Current.Request.Cookies.Remove(cookieName);
                  }
                  Cookie =  HttpContext.Current.Response.Cookies[cookieName];
                  if (Cookie != null)
                  {
                        Cookie.Expires=  DateTime.Now;
          HttpContext.Current.Response.Cookies.Remove(cookieName);
                  }
          }
                  public void appendcook(string cookies,string cookiesvalue,int days)
                  {
                         HttpCookie usercookie=new HttpCookie(cookies,cookiesvalue);
                        usercookie.Expires = DateTime.Now.AddDays(days);
                         HttpContext.Current.Response.Cookies.Add(usercookie);
                  }
    2、中文cookie的问题,在Windows 2000正常,在Windows 2003有时会不正常(几率很小,但的确存在),采用:
    Server.UrlEncode();  
    Server.UrlDecode();
    编码和解码。

    Cookie["MyCookie"] = Server.UrlEncode("中文")
    Response.Write(Server.UrlDecode(Request.Cookies("MyCookie").Value()))

    HttpContext.Current.Response.Cookies
    HttpContext.Current.Request.Cookies

    分别是需要写回用户客户端和从用户客户端读取的Cookie集合。

    当修改Cookie的时候,为了保证同一个Asp.net 页面能访问修改后的Cookie,就必须同时修改这两个集合中的Cookie。

  • 相关阅读:
    NLPIR大数据语义系统文本数据分析挖掘平台
    NLPIR:中文语义挖掘是自然语言处理的关键
    NLPIR-JZSearch智能搜索深层挖掘大数据资源
    NLPIR智能Protege知识图谱实现多场景应用
    DotNet加密方式解析--散列加密
    SSO单点登录PHP简单版
    xss框架基础框架实现
    Kafka Offset Storage
    C#如何使用ES
    模拟Vue之数据驱动
  • 原文地址:https://www.cnblogs.com/zhangpengshou/p/887274.html
Copyright © 2011-2022 走看看