博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
session,application,cookie,viewstate,Querystring等的作用域
阅读量:6458 次
发布时间:2019-06-23

本文共 1087 字,大约阅读时间需要 3 分钟。

Session:存放于服务器,生命周期根据不同的设置而定。默认是20分钟,可以设置成无限期。主要根据客户端传递过来的SessionID来区分不同的对话。至于SessionID如何传递。目前绝大部分是只用Cookie,少部分使用url,极少部分使用表单元素。总之从客户端传递到服务器即可。

application:服务器应用程序,这个的生命周期是根据应用程序进程来决定的。IIS5以前基本上是当前进程,IIS5之后是根据进程池而定。只要这些停了那么就消失了,否则就一直存在。
cookie:这个是存放的载体在客户端的浏览器中,生命周期默认是根据服务器返回的Set-Cookie头设置的。有2大类。1、httponly:浏览器一关就没了。2、有过期时间:过期时间到了就没了。当然跟本地浏览器的设置也有关系。还有就是每个cookie都会有指定的domain,如果当前网站与指定的domain不同那么cookie也是取不到的。还有cookie的domain大小写区分,www.aa.com与www.Aa.com是不同的。另外cookie的传递是在Http头中传递的,一旦设置了cookie。每次请求服务器(不管是网页还是图片还是脚本)都100%会带上cookie。所以cookie过大的话,会影响网络传输效率。还有cookie只支持ASCII编码所以要UrlEncode
viewstate:这个东西不好说,载体是网络。服务器将服务器的 可以序列化的对象 序列化并加密后 转换成base64格式放到 一个页面的hidden表单元素中。当带着这个viewstate的表单提交回服务器时才能接收到。所以嘛,这个对象的生命周期仅仅是这个页面。而且页面必须用表单提交回来,否则数据就丢了。想解密viewstate?首先你要拿到一个重要的解密key。这个就是machineKey。
Querystring:http协议的基础,理论上没有生命周期可言。是由客户端向服务器发送的URL请求而已。因为也在http头中所以只支持ASCII编码

原文地址:

个人觉得这个答案是比较好的,故摘出来,零金碎玉,积少成多!

如果认为此文对您有帮助,别忘了支持一下哦!

作者:
来源:
声明:本博客原创文字只代表本人工作中在某一时间内总结的观点或结论,与本人所在单位没有直接利益关系。非商业,未授权,贴子请以现状保留,转载时必须保留此段声明,且在文章页面明显位置给出原文连接。
转载:http://www.cnblogs.com/youring2/archive/2012/03/25/2416954.html
你可能感兴趣的文章
HDU 4819 Mosaic (二维线段树)
查看>>
c# implicit explicit关键字(隐式和显式数据类型转换)
查看>>
JdbcUtils针对事务问题作出的第三次修改
查看>>
检测代码运行时间(微秒级)
查看>>
【转载】数据仓库的基本架构
查看>>
更新ADT20后无法创建Android项目
查看>>
贴个ALSA例程
查看>>
hdu1358
查看>>
Leetcode: Word Break
查看>>
2014 网选 广州赛区 hdu 5025 Saving Tang Monk(bfs+四维数组记录状态)
查看>>
图像处理之opencv---mat、cvmat、IplImage之间的转换
查看>>
linux环境变量配置
查看>>
JAVA 设计模式 装饰者模式
查看>>
视频直播、视频会议、视频点播三者有何区别
查看>>
lintcode:Plus One 加一
查看>>
解决启动Distributed Transaction Coordinator服务出错的问题
查看>>
Java数据类型和MySql数据类型对应表
查看>>
面向对象编程(十)——继承之Super关键字及内存分析
查看>>
Atitit. Atiposter 发帖机 新特性 poster new feature v7 q39
查看>>
Android View 如何测量
查看>>