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

NoB*_*Man 4 asp.net timeout forms-authentication

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

And*_*ker 5

如果会话已过期,您需要检查客户端.最简单的方法是在页面加载时使用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 );
Run Code Online (Sandbox Code Playgroud)

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