zoukankan      html  css  js  c++  java
  • 跨页面传值之Cookie

      3.客户端再次访问某站点

          浏览器将携带Cookie信息的指令,将获得的信息参与编译。

      4.将含有Cookie信息参与编译的页面发回给浏览器

          其中如果有相关的设置Cookie的指令。将再次通过浏览器,写入客户端

    Cookie的限制

     

    1.必须通过浏览器进行操作

      如果浏览器禁用Cookie,则无法工作

      信息只能是文本

      信息大小限制:4KB(兼容性考虑)

    安全问题不容忽视

      使用Cookie存储的尽量是些无关痛痒的信息

      如果要保存用户名和密码,将编码为密文形式

    实现单值Cookie的设置

      HttpCookie ck=new HttpCookie("animal");

      ck.value="猫";

      ck.expires=Date Time.Now.AddDays(1);

      Response.Cookies.Add(ck);                          ______Response.Write("......");

                             Response.Redirect(".....");

                               Response.Cookies.....

    1.声明创建(可同时赋值)

    2.设置有效期(一个时间点)

      如果不设置有效时间,关闭浏览器,Cookie就失效

      如果设置的有效时间当下时间以前的,Cookies无效

    3.发送写入Cookie指令给浏览器(Response)

    实现单值Cookie信息读取

    1.需要加一个判断,判断Cookie是否存在。当存在时,才进行读取。

      判断:

        If(Request.Cookies[animal]!=null)

        {

          mystr=Request.Cookies["animal"].values;

        }

      注意:Value必须加,不同于Request.QueryString["...."]

          Request.Cookies["..."]是一个对象,不能对象和string变量不能赋值

       实例:

     

      C#:

     protected void BtnCookieset_Click(object sender, EventArgs e)
        {
            HttpCookie ck = new HttpCookie("name");  //创建HttpCookie对象
            ck.Value = "小王";            //设置cookie的名字
            ck.Expires = DateTime.Now.AddSeconds(10);   //为cookie设置失效时间
            Response.Cookies.Add(ck);   //添加cookie
        }

      C#

      protected void Page_Load(object sender, EventArgs e)
        {
            if (Request.Cookies["name"]!=null)   //判断结果Cookie 有数据
            {   
                //获取cookie的value值
                string read = Request.Cookies["name"].Value;
                //输出read
                Response.Write(read);
            }
            
        }

    实现单值Cookie信息删除

      1.删除Cookie值不同于清空变量值。

        它存放的位置是客户端硬盘。

      2.删除cookie的思路

        将cookieName的邮箱期Expires设置为一个过期日期,在此写入硬盘

    标准写法

      Response.Cookies["name"].Expires=DateTime.MinValue;

     

      protected void btnremoveCookie_Click(object sender, EventArgs e)
        {
            //删除cookie就是利用cookie的失效时间
            Response.Cookies["name"].Expires = DateTime.MinValue;
        }

     

     

  • 相关阅读:
    2491 玉蟾宫
    1704 卡片游戏
    1020 孪生蜘蛛
    1215 迷宫
    3149 爱改名的小融 2
    1316 文化之旅 2012年NOIP全国联赛普及组
    1664 清凉冷水
    157. [USACO Nov07] 奶牛跨栏
    [SCOI2005]繁忙的都市
    【NOIP2014模拟赛No.1】我要的幸福
  • 原文地址:https://www.cnblogs.com/xiaowie/p/9166039.html
Copyright © 2011-2022 走看看