• Asp.net中的状态保持方案


    客户端的状态保持方案:ViewState、隐藏域、Cookies、控件状态、URL查询参数
    服务端的状态保持方案:Session(会话)ApplicationCaching(缓存)DataBase(数据库)
     
     
    一、使用ViewState:
    (1)页面上必须有一个服务器端窗体标记(<form runat="server">)
    (2)服务器在接收到用户请求一个页面后,会自动在请求报文中找看是否包含__VIEWSTATE的隐藏域,如果有,则将中间的值解码后添加到页面的ViewState属性中。
    (3)服务器在输出时,会自动的将ViewState中的值添加到表单里名叫__VIEWSTATE的隐藏域中。
     
    ViewState适用于同一个页面在不关闭的情况下多次与服务器交互。
     
    二、使用Cookie:
    Cookie是一种能够让网站服务器把少量数据(4kb左右)储存到客户端硬盘或内存,并且读取出来的一种技术。
    当你浏览某网站时,由Web服务器放置于你硬盘上的一个非常小的文本文件,它可以记录你的用户ID、浏览过的网页或者停留的时间等网站想要你保存的信息。当你再次通过浏览器访问该网站时,浏览器会自动将属于该网站的Cookie发送到服务器去,服务器通过读取Cookie,得知你的相关信息,就可以做出相应的动作。如在页面显示欢迎你的标语,或者让你不用输入ID、密码就直接登录等等。
    浏览器保存Cookie有两种方式:(看是否设置过期时间)
    1—浏览器的内存中;
    2—浏览器所在的电脑的硬盘中。为将要写入到浏览器的Cookie对象设置失效时间:
    cook.Expires = DateTime.Now.AddMinutes(5);//设置cook5分钟后失效
    开发场景:常用于登录和保存用户最近浏览商品
    Cookie的操作:
    服务器设置Cookie:
         HttpCookie cook = new HttpCookie(“uId”, “10001”);//(“键”,”值”)
         cook.Expires = DateTime.Now.AddDays(18);//设置失效日期-现在之后的18天后
           context.Response.Cookies.Add(cook); //添加到响应中
     
    服务器获得客户端传来的Cookie:
         string strUName=context.Request.Cookies[“uId”].Value;//从请求中获得Cookie
     
    三、使用Session:
     
    Session提供了一种把信息保存在服务器内存中的一种方式。
    在整个用户会话过程中都会保留此信息。
    当用户在应用程序中从一个网页浏览到另一个网页时,存储在 Session 对象中的变量不会被丢弃。
    当会话过期或终止时,服务器就会清除 Session 对象
    开发场景:常用于保存登录用户ID
     
    四、Application:
    在服务器端保存网站共享数据的一种方式;
  • 相关阅读:
    matplotlib 去掉坐标轴
    求最大公约数最小公倍数及整除求余数等
    数据分析小题
    map,reduce,filter基础实现
    今日成果:爬取百度贴吧
    Jquery瀑布流布局,jQuery Wookmark Load 示例
    html5 input type="color"边框伪类效果
    Jquery点击除了指定div元素其他地方,隐藏该div
    Jquery判断checkbox是否被选中
    Jquery给网页的title取值和赋值
  • 原文地址:https://www.cnblogs.com/chay1227/p/2960605.html
Copyright © 2020-2023  润新知