梦想阳光

导航

状态管理

 

因为http是无状态的对象,所以微软提供了状态对象

隐藏域:

     隐藏域不适合长期保存,页面关闭隐藏域里面的值也关闭

     登录用户的数据不能保存在隐藏域中

     隐藏域只存在于当前页面

     隐藏域不能放敏感的信息,也不能保存大量的数据

     通过value取值

     如果value有值代表执行编辑操作,没有执行插入操作

cookie:

     以一种文件将我们要保存的数据存储起来

    把用户的数据隐藏的保护到指定的位置上

    保存不是很隐私的信息,但是需要一段时间存储的东西都可以让cookie存储

   cookie保存在客户端,设置保存的时间expires,cookie没有删掉这说,只有过期,服务器压力小。缺点,用户禁止的话就不能往里边写东西

 获取cookie:request.cookies["name"].value;

创建cookie:是服务器作用于浏览器的行为,即cookie的信息是由服务器写入到客户端的,response.cookies["name"].value="你好";或者可以这样写 httpcookie cookie=new httpcookie("name","你好"); cookie.expires=datetime.now.adddays(1);response.cookies.add(cookie);

一个网站的所有网页都有效

url:把参数作为请求的一部分

      request.quertstring,总有效

viewstate:针对页面对象(每个页面都有一个自己的viewstate,所以是页面对象)进行状态保存的一种机制,不能传值,适合放大量的数据,为了提高效率,有时候需要禁用     viewstate,如果数据经常大量的修改,不建议用viewstate ,保存在客户端;当把一个对象保存到viewstate时,记得把对象标记为serialize

application:

       不用的时候处理掉,减轻服务器压力,存在服务器端

session:

    被存放在服务器上,要想取数据必须从服务器上取,每个人都可以创建一个session,session针对每一个客户(不同的浏览器)或者每一个独立的会话存储的一个值。客户端知  道ID,根据ID取数据。缺点:把东西写到服务器上,人多的话服务器的压力过大

   可以通过cookie将数据存储在浏览器上,通过模式设置

session分为服务器端session和客户端session

  服务器端session:是一个只读的

     下面对上面几个对象进行比较

           viewstate     cookie             session        application

 范围:  单个用户        单个用户           单个用户         整个应用程序

位置:  客户端          客户端                服务器            服务器

有效期:页面关闭     默认是浏览器关闭   默认是20分钟    应用程序关闭

安全性:较低         较低                    较高                 较高

posted on 2012-08-06 16:42  梦想阳光  阅读(151)  评论(0)    收藏  举报