我正在使用代码中的Session对象来存储用户登录,用户登录将被保存到DB中。
我想确保会话超时时的行为。
如果会话超时,用户可以做什么?我想浏览到不同的页面是否会恢复会话?因此,唯一的选择是关闭所有浏览器,然后返回并激活会话?
我想知道在什么情况下会话就不会再活了。
会话超时也会在Session_End中触发global.aspx吗?
发布于 2015-05-21 11:17:46
只要继续使用相同的SessionID值发出请求,会话就被认为是活动的。如果对特定会话的请求之间的时间超过指定的超时值(以分钟为单位),则会话被视为过期。参考文献
我相信您正在检查用户是否登录到每个页面(或主页),因此,只要用户不是空闲且正在使用系统,会话就会被更新,无需担心。如果用户空闲了很长时间,并且会话过期了,那么出于安全原因,让他再次登录是合乎逻辑的。
发布于 2015-05-21 12:13:58
在注销时使用这个:
Session.Remove(“会话名”);
发布于 2015-05-21 12:41:20
我相信您不会通过在Session_End事件中对会话对象调用放弃方法来显式地终止会话。
会话的注销使此事件明显地转移到fire.And,当用户试图在页面之间导航时,必须将用户带到登录页面。
https://stackoverflow.com/questions/30371966
复制相似问题