ASP.Net表单身份验证-超时时转到登录页面



是否可以在发生超时时重定向到登录页面,而无需等待用户首先点击任何内容?现在,当超时发生时,用户所在的页面仍然显示,但只要用户点击任何内容,它就会进入登录页面。谢谢

您需要在客户端检查会话是否已过期。最简单的方法是在页面加载后使用javascript简单地开始倒计时(只要超时)。到期后,将用户发送到登录页面。或者更好:让用户知道会话已经过期,因为如果你把他送到某个地方,他可能不会太高兴。虽然我的网上银行软件确实做到了这一点,但当然是出于安全原因。

下面是一个非常简单的例子:http://jsfiddle.net/39Sj6/1/

function sessionHasExpired(){
    if(confirm("Your session has expired. Do you want to go to the login page")){
        window.location = "http://google.com/?q=login";   
    }
}
var sessionTimeInMilliseconds = 1000*60*5; // here: 5 minutes
setTimeout(sessionHasExpired, sessionTimeInMilliseconds );

(在jsfiddle中,你不会被重定向到谷歌,因为这是jsfiddl禁止的,但原则上它会起作用)

是的,您可以通过Javascript计时器和ajax调用轮询会话状态以检查服务器会话状态,然后重定向到登录页面,或者,您可以将计时器设置为指定的时间限制(20分钟或会话超时),然后重定向至登录页面。

相关内容

  • 没有找到相关文章

最新更新