日期:2014-05-18  浏览次数:20825 次

asp.net 中如何设置session的过期时间
问题描述:在一个网页中有一个登录模块,session["name"]=this.tbusername.text,把用户名保存到session中以方便页面间的传值,但是有一个问题就是,我想使用户关闭网页的时候 session["name"]的值就失效,如果不关闭网页session["name"]值就一直保留,不知道怎么设置,希望大家帮忙看一下

------解决方案--------------------
session就是关闭浏览器就失效的。cookie是关闭浏览器也不失效,除非用户禁用或清除cookie。
------解决方案--------------------
当你关闭网页时,当前会话已经结束,当前会话的SESSION本身就不存在了
------解决方案--------------------
这样的话应该使用Cookie,用Session的话用户关闭浏览器都不一定会被立即清除。
------解决方案--------------------
过期时间在配置文件中设置
------解决方案--------------------
XML code
<system.web>
  <sessionState mode="InProc" timeout="30"/>
  </system.web>

------解决方案--------------------
用户关闭网页,再重新请求网页,Session就不是原来那个了。
如果不关闭网页session["name"]值就一直保留,可以把Session的过期时间设得大些。或者用js每隔一个周期ajax请求一下服务器。