zoukankan      html  css  js  c++  java
  • cookie使用详解

    cookie是用来保存客户资料的好方法,与同样可以用来保存客户资料的 session不同的是,session是把资料保存在服务器端,而cookie是把资料保存在客户端,我们平常接触的最多的cookie应用应该就是论坛的信息保存了,当大家在登陆一个自己喜欢的论坛的时候,通常都会有类似于“是否保存您的登陆信息”这样的选择,如果选了这个,那下次再登陆这个论坛的时候,就不用费力填写登陆表单,而是可以直接就登陆。

    在asp.net中,使用cookie的过程大致如下:建立一个Httpcookie的实例,然后给它赋值,最后将这个保存了资料的实例加入到 HttpResponse的cookies集合中,这样就完成了cookie的前期设置,要使用cookie的时候,需要从HttpRequest的 cookies集合中取出需要的cookie,然后将它赋给一个Httpcookie的实例,然后使用它……总之具体的过程就是:生产,保存,使用(果然很麻烦啊)下面分过程来说好了。

    生产:

    //创建一个Httpcookie的实例

    HttpCookie co=new HttpCookie("gundam");

    //往实例中添加资料,其中第一个string是键值,起标示作用,就像仓库里放了一堆箱子,每个箱子都有一个自己的编号,第二个string是相对应的值,就好比是箱子里存放的东西

    co.Values.Add("GP-01_fb ","《机动战士高达0083-星屑的回忆》初登场");

    co.Values.Add("sazabi","《机动战士高达-夏亚的反击》初登场");

    保存:

    //Expires属性用来设置cookie的生命时间,就是设定这个cookie可以保持多久,大家在论坛里可以看到,登陆的时候选择保存资料有很多选项,比如“保存一个月”、“保存一年”等。用到了DateTime和TimeSpan来组合产生一个时间段,关于这两个的详细信息,可以查阅.NET Framewokr SDK 文档

    DateTime dt=DateTime.Now;

    TimeSpan ts=new TimeSpan(0,0,2,0);

    co.Expires=dt.Add(ts);

    //将实例加入到HttpResponse的cookies集合中,以便以后使用

    Response.AppendCookie(co);

    使用:

    //下面是一个比较常用的使用cookie的方法,先检查是否存在cookie,若是有,就把值取出来,否则就……

    if(Request.Cookies["gundam"]==null)

    {

    lab.Text="none";

    }

    else

    {

    // 像这样来获得保存的cookie,并用以前设置的键来获得需要的值

    HttpCookie co2=Request.Cookies["gundam"];

    lab.Text=co2.Values["sazabi"].ToString();

    }

    asp.net中httpcookie 的使用和简单计数器

    HttpCookie cookie = new HttpCookie("Info");//定义cookie对象以及名为Info的项

    DateTime dt = DateTime.Now;//定义时间对象

    TimeSpan ts=new TimeSpan(1,0,0,0);//cookie有效作用时间,具体查msdn

    cookie.Expires = dt.Add(ts);//添加作用时间

    cookie.Values.Add("user","cxbkkk");//增加属性

    cookie.Values.Add("userid","1203");

    Response.AppendCookie(cookie);//确定写入cookie中         读取cookie

    if(Request.Cookies["Info"]!=null)

    {

          string temp=Convert.ToString(Request.Cookies["Info"].Values["user"])+"   "+Convert.ToString(Request.Cookies["Info"].Values["userid"]);

         //读全部就用Request.Cookies["Info"].Value)

         if(temp=="")

          {

              Response.Write("空");

          }

          else

              Response.Write(temp);

    }

    else

    {

          Response.Write("error");

    }         修改cookie

    Response.Cookies["Info"]["user"] = "2"; Response.Cookies["Info"].Expires = DateTime.Now.AddDays(1);         删除cookie下的属性

    HttpCookie acookie=Request.Cookies["Info"];

    acookie.Values.Remove("userid");

    acookie.Expires = DateTime.Now.AddDays(1);

    Response.Cookies.Add(acookie);         删除所有cookie,就是设置过期时间为现在就行了

    int limit=Request.Cookies.Count - 1;

    for(int i=0;i<limit;i++)

    {     acookie = Request.Cookies(i)

         acookie.Expires = DateTime.Now.AddDays(-1)

         Response.Cookies.Add(acookie)

    }

    计数器

    using System;

    using System.Data;

    using System.Configuration;

    using System.Web;

    using System.Web.Security;

    using System.Web.UI;

    using System.Web.UI.WebControls;

    using System.Web.UI.WebControls.WebParts;

    using System.Web.UI.HtmlControls;

    using System.Net;

    public partial class _Default : System.Web.UI.Page

    {

        int count = 0;

        protected void Page_Load(object sender, EventArgs e)

        {

            HttpCookie cookies = Request.Cookies.Get("count");

           

            HttpCookie myCookie = null;

            if (cookies != null)

            {

                if (cookies.Name.Equals("count"))

                {

                    myCookie = cookies;

                 

                }

            }

            if (myCookie != null)

            {

              

                count =Convert.ToInt32(myCookie.Value);

                count++;

                myCookie.Value = count.ToString();

                DateTime dts = DateTime.Now;

                TimeSpan tss = new TimeSpan(1, 0, 0, 0);

                myCookie.Expires = dts.Add(tss);

                Response.AppendCookie(myCookie);

                Response.Write("您这是第" + count + "次访问");

            }

            else

            {

                myCookie = new HttpCookie("count", "1");

                DateTime dts = DateTime.Now;

                TimeSpan tss = new TimeSpan(1, 0, 0, 0);

                myCookie.Expires = dts.Add(tss);

               // cookie.Expires = DateTime.MaxValue;

                Response.AppendCookie(myCookie);

                Response.Write("您这是第" + myCookie.Value + "次访问");

            }

        }

    }

     

    cookie是用来保存客户资料的好方法,与同样可以用来保存客户资料的 session不同的是,session是把资料保存在服务器端,而cookie是把资料保存在客户端,我们平常接触的最多的cookie应用应该就是论坛的信息保存了,当大家在登陆一个自己喜欢的论坛的时候,通常都会有类似于“是否保存您的登陆信息”这样的选择,如果选了这个,那下次再登陆这个论坛的时候,就不用费力填写登陆表单,而是可以直接就登陆。

    在asp.net中,使用cookie的过程大致如下:建立一个Httpcookie的实例,然后给它赋值,最后将这个保存了资料的实例加入到 HttpResponse的cookies集合中,这样就完成了cookie的前期设置,要使用cookie的时候,需要从HttpRequest的 cookies集合中取出需要的cookie,然后将它赋给一个Httpcookie的实例,然后使用它……总之具体的过程就是:生产,保存,使用(果然很麻烦啊)下面分过程来说好了。

    生产:

    //创建一个Httpcookie的实例

    HttpCookie co=new HttpCookie("gundam");

    //往实例中添加资料,其中第一个string是键值,起标示作用,就像仓库里放了一堆箱子,每个箱子都有一个自己的编号,第二个string是相对应的值,就好比是箱子里存放的东西

    co.Values.Add("GP-01_fb ","《机动战士高达0083-星屑的回忆》初登场");

    co.Values.Add("sazabi","《机动战士高达-夏亚的反击》初登场");

    保存:

    //Expires属性用来设置cookie的生命时间,就是设定这个cookie可以保持多久,大家在论坛里可以看到,登陆的时候选择保存资料有很多选项,比如“保存一个月”、“保存一年”等。用到了DateTime和TimeSpan来组合产生一个时间段,关于这两个的详细信息,可以查阅.NET Framewokr SDK 文档

    DateTime dt=DateTime.Now;

    TimeSpan ts=new TimeSpan(0,0,2,0);

    co.Expires=dt.Add(ts);

    //将实例加入到HttpResponse的cookies集合中,以便以后使用

    Response.AppendCookie(co);

    使用:

    //下面是一个比较常用的使用cookie的方法,先检查是否存在cookie,若是有,就把值取出来,否则就……

    if(Request.Cookies["gundam"]==null)

    {

    lab.Text="none";

    }

    else

    {

    // 像这样来获得保存的cookie,并用以前设置的键来获得需要的值

    HttpCookie co2=Request.Cookies["gundam"];

    lab.Text=co2.Values["sazabi"].ToString();

    }

    asp.net中httpcookie 的使用和简单计数器

    HttpCookie cookie = new HttpCookie("Info");//定义cookie对象以及名为Info的项
    DateTime dt = DateTime.Now;//定义时间对象
    TimeSpan ts=new TimeSpan(1,0,0,0);//cookie有效作用时间,具体查msdn
    cookie.Expires = dt.Add(ts);//添加作用时间
    cookie.Values.Add("user","cxbkkk");//增加属性
    cookie.Values.Add("userid","1203");
    Response.AppendCookie(cookie);//确定写入cookie中         读取cookie
    if(Request.Cookies["Info"]!=null)
    {
          string temp=Convert.ToString(Request.Cookies["Info"].Values["user"])+"   "+Convert.ToString(Request.Cookies["Info"].Values["userid"]);
         //读全部就用Request.Cookies["Info"].Value)
         if(temp=="")
          {
              Response.Write("空");
          }
          else
              Response.Write(temp);
    }
    else
    {
          Response.Write("error");
    }         修改cookie
    Response.Cookies["Info"]["user"] = "2"; Response.Cookies["Info"].Expires = DateTime.Now.AddDays(1);         删除cookie下的属性
    HttpCookie acookie=Request.Cookies["Info"];
    acookie.Values.Remove("userid");
    acookie.Expires = DateTime.Now.AddDays(1);
    Response.Cookies.Add(acookie);         删除所有cookie,就是设置过期时间为现在就行了
    int limit=Request.Cookies.Count - 1;
    for(int i=0;i<limit;i++)
    {     acookie = Request.Cookies(i)
         acookie.Expires = DateTime.Now.AddDays(-1)
         Response.Cookies.Add(acookie)
    }

    计数器

    using System;
    using System.Data;
    using System.Configuration;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    using System.Net;

    public partial class _Default : System.Web.UI.Page 
    {
        int count = 0;
        protected void Page_Load(object sender, EventArgs e)
        {

            HttpCookie cookies = Request.Cookies.Get("count");

            
            HttpCookie myCookie = null;

            if (cookies != null)
            {

                if (cookies.Name.Equals("count"))
                {

                    myCookie = cookies;
                  
                }

            }

            if (myCookie != null)
            {

               
                count =Convert.ToInt32(myCookie.Value);

                count++;
                myCookie.Value = count.ToString();
                DateTime dts = DateTime.Now;
                TimeSpan tss = new TimeSpan(1, 0, 0, 0);
                myCookie.Expires = dts.Add(tss);
                Response.AppendCookie(myCookie);


                Response.Write("您这是第" + count + "次访问");


            }
            else
            {

                myCookie = new HttpCookie("count", "1");

                DateTime dts = DateTime.Now;
                TimeSpan tss = new TimeSpan(1, 0, 0, 0);
                myCookie.Expires = dts.Add(tss);
               // cookie.Expires = DateTime.MaxValue;
                Response.AppendCookie(myCookie);

                Response.Write("您这是第" + myCookie.Value + "次访问");
            }


        }
    }

    cookie是用来保存客户资料的好方法,与同样可以用来保存客户资料的 session不同的是,session是把资料保存在服务器端,而cookie是把资料保存在客户端,我们平常接触的最多的cookie应用应该就是论坛的信息保存了,当大家在登陆一个自己喜欢的论坛的时候,通常都会有类似于“是否保存您的登陆信息”这样的选择,如果选了这个,那下次再登陆这个论坛的时候,就不用费力填写登陆表单,而是可以直接就登陆。

    在asp.net中,使用cookie的过程大致如下:建立一个Httpcookie的实例,然后给它赋值,最后将这个保存了资料的实例加入到 HttpResponse的cookies集合中,这样就完成了cookie的前期设置,要使用cookie的时候,需要从HttpRequest的 cookies集合中取出需要的cookie,然后将它赋给一个Httpcookie的实例,然后使用它……总之具体的过程就是:生产,保存,使用(果然很麻烦啊)下面分过程来说好了。

    生产:

    //创建一个Httpcookie的实例

    HttpCookie co=new HttpCookie("gundam");

    //往实例中添加资料,其中第一个string是键值,起标示作用,就像仓库里放了一堆箱子,每个箱子都有一个自己的编号,第二个string是相对应的值,就好比是箱子里存放的东西

    co.Values.Add("GP-01_fb ","《机动战士高达0083-星屑的回忆》初登场");

    co.Values.Add("sazabi","《机动战士高达-夏亚的反击》初登场");

    保存:

    //Expires属性用来设置cookie的生命时间,就是设定这个cookie可以保持多久,大家在论坛里可以看到,登陆的时候选择保存资料有很多选项,比如“保存一个月”、“保存一年”等。用到了DateTime和TimeSpan来组合产生一个时间段,关于这两个的详细信息,可以查阅.NET Framewokr SDK 文档

    DateTime dt=DateTime.Now;

    TimeSpan ts=new TimeSpan(0,0,2,0);

    co.Expires=dt.Add(ts);

    //将实例加入到HttpResponse的cookies集合中,以便以后使用

    Response.AppendCookie(co);

    使用:

    //下面是一个比较常用的使用cookie的方法,先检查是否存在cookie,若是有,就把值取出来,否则就……

    if(Request.Cookies["gundam"]==null)

    {

    lab.Text="none";

    }

    else

    {

    // 像这样来获得保存的cookie,并用以前设置的键来获得需要的值

    HttpCookie co2=Request.Cookies["gundam"];

    lab.Text=co2.Values["sazabi"].ToString();

    }

    asp.net中httpcookie 的使用和简单计数器

    HttpCookie cookie = new HttpCookie("Info");//定义cookie对象以及名为Info的项
    DateTime dt = DateTime.Now;//定义时间对象
    TimeSpan ts=new TimeSpan(1,0,0,0);//cookie有效作用时间,具体查msdn
    cookie.Expires = dt.Add(ts);//添加作用时间
    cookie.Values.Add("user","cxbkkk");//增加属性
    cookie.Values.Add("userid","1203");
    Response.AppendCookie(cookie);//确定写入cookie中         读取cookie
    if(Request.Cookies["Info"]!=null)
    {
          string temp=Convert.ToString(Request.Cookies["Info"].Values["user"])+"   "+Convert.ToString(Request.Cookies["Info"].Values["userid"]);
         //读全部就用Request.Cookies["Info"].Value)
         if(temp=="")
          {
              Response.Write("空");
          }
          else
              Response.Write(temp);
    }
    else
    {
          Response.Write("error");
    }         修改cookie
    Response.Cookies["Info"]["user"] = "2"; Response.Cookies["Info"].Expires = DateTime.Now.AddDays(1);         删除cookie下的属性
    HttpCookie acookie=Request.Cookies["Info"];
    acookie.Values.Remove("userid");
    acookie.Expires = DateTime.Now.AddDays(1);
    Response.Cookies.Add(acookie);         删除所有cookie,就是设置过期时间为现在就行了
    int limit=Request.Cookies.Count - 1;
    for(int i=0;i<limit;i++)
    {     acookie = Request.Cookies(i)
         acookie.Expires = DateTime.Now.AddDays(-1)
         Response.Cookies.Add(acookie)
    }

    计数器

    using System;
    using System.Data;
    using System.Configuration;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    using System.Net;

    public partial class _Default : System.Web.UI.Page 
    {
        int count = 0;
        protected void Page_Load(object sender, EventArgs e)
        {

            HttpCookie cookies = Request.Cookies.Get("count");

            
            HttpCookie myCookie = null;

            if (cookies != null)
            {

                if (cookies.Name.Equals("count"))
                {

                    myCookie = cookies;
                  
                }

            }

            if (myCookie != null)
            {

               
                count =Convert.ToInt32(myCookie.Value);

                count++;
                myCookie.Value = count.ToString();
                DateTime dts = DateTime.Now;
                TimeSpan tss = new TimeSpan(1, 0, 0, 0);
                myCookie.Expires = dts.Add(tss);
                Response.AppendCookie(myCookie);


                Response.Write("您这是第" + count + "次访问");


            }
            else
            {

                myCookie = new HttpCookie("count", "1");

                DateTime dts = DateTime.Now;
                TimeSpan tss = new TimeSpan(1, 0, 0, 0);
                myCookie.Expires = dts.Add(tss);
               // cookie.Expires = DateTime.MaxValue;
                Response.AppendCookie(myCookie);

                Response.Write("您这是第" + myCookie.Value + "次访问");
            }


        }
    }

  • 相关阅读:
    绿色版 notepad++ 添加鼠标右键菜单
    Scala 安装与配置
    Scala 神奇的下划线 _
    Kafka 安装部署
    Pulsar 下一代消息平台
    Sqoop 安装部署
    Flume 常用配置项
    Android-selector
    android- 9patch
    有关内存的思考题
  • 原文地址:https://www.cnblogs.com/dullbaby/p/3242810.html
Copyright © 2011-2022 走看看