ASP.NET 中的 Session对象
2021-02-02 08:15
标签:alt 联系 变量 区分 技术 浏览器 news second 失效 You reap what you sow. 一份耕耘,一份收获。 通过Cookies存储的数据不安全,因此需要一个更安全的存储对象----Session对象。 牛津: a period of time that is spent doing a particular activity Session通常指一个用户登录网站到注销退出网站所经过的时间。也就是说Session本质上是个时间概念。 一个用户请求Web服务器的时候,服务器为了保存用户的状态,封装了一个Session对象,在浏览器请求后相应回去。面对多个用户,为了便于区分,给每个浏览器传送的Session对象都是不一样的,用Session对象的SessionID 属性来记录。 Session和Cookies是有联系的。如果一个浏览器不支持或者禁用了Cookies,那么Session将无法起作用。Session和Cookies本质是一样的,区别是Session是建立在服务端的,Cookies是建立在浏览器端的。 由于Session对象是存在服务器的内存中的,为了节约性能,Session对象都有生命周期属性: 可以像 窗体变量集合 一样存储: 和存储一样的格式去读取: 例子:在Load事件中存储用户的身份证号。存储完成后跳转到UserInfo界面。 Session 采取滚动计时的方式。若开发者打开并写入Session ,从写入开始,该页面如果一直没有提交操作,则20分钟后,Session就会被服务器自动销毁。如果有提交操作,服务器会在提交后重新计时,以此滚动。 可一通过以下两种方法设置Session。 方法二: 例子: 设置Session失效时间为20分钟。 ASP.NET 中的 Session对象 标签:alt 联系 变量 区分 技术 浏览器 news second 失效 原文地址:https://www.cnblogs.com/hillxu/p/13171167.html
1、Session单词含义
Session
[?se?n] 一场,一节。在这里可以翻译成会话。2、Session 概述
Session.Timeout
超过设定的时间,就会自动将改对象遗弃。3、Session的存储和读取
Session["KeyName"] = value; //通过键名存储
Session[0] = value; //通过索引存储
Object.value = Session["KeyName"];
Object.value = Session[0];
protected void Page_Load(object sender, EventArgs e){
Session["userCard"] = "41302619991011xxxx";
Response.Redirect("UserInfo.aspx");
}
4、Session 对象的属性和方法
4.1、Session对象的常用属性
属性名称
说明
Timeout
获取或设置会话状态终止前各种请求之间所允许的时间
SessionID
获取会话的唯一标识符
IsCookieless
获取一个值。该值指示会话嵌入URL中还是存储在HTTP Cookie中
Mode
获取会话的状态模式
Keys
获取存储在会话中所有键的集合
IsNewSession
获取一个值。该值指示会话是否与当前请求一起创建的
4.2、Session对象的常用方法
方法名称
说明
Abandon()
取消当前对话
Add()
向会话状态集合添加一个新项
Clear()
从会话状态集合中移除所有键和值
4.3、设置Session销毁的时间
方法一:Session["userName"] = "Miss.Zhang";
Session.Timeout = 30;
mode
存哪里,默认存在IIS进程内。OFF表示不使用Session功能,InProc表示存在IIS进程中,StateServer 表示将Session存在ASP.NET状态服务进程中。SQLServer表示将Session存储在服务器磁盘中,服务器挂掉重启后都还在。cookieless
默认值是false,客户端的Session值存在哪;timeout
服务器多少分钟后放弃Session信息,默认20min;stateConnectionString
mode值为State Server的时候的必需属性。状态服务存储所在服务器的名称和端口号,例如"tcpip=127.0.0.1:42424"
其中42424是默认端口号。stateConnectionString
mode值为SQL Server的时候的必需属性。stateNetworkTimeout
设置使用StateServer模式存储,Session断开后,经过多少秒后TCP/IP断开。默认值是10秒。
文章标题:ASP.NET 中的 Session对象
文章链接:http://soscw.com/index.php/essay/49880.html