簡體   English   中英

ASP.Net表單身份驗證 - 在超時時轉到登錄頁面

[英]ASP.Net forms authentication - go to login page on timeout

是否可以在超時發生時重定向到登錄頁面而無需等待用戶先點擊任何內容? 現在,當超時發生時,頁面用戶仍處於顯示狀態,但只要用戶點擊任何內容,它就會進入登錄頁面。 謝謝。

如果會話已過期,您需要檢查客戶端。 最簡單的方法是在頁面加載時使用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中你不會被重定向到谷歌,因為這是jsfiddle禁止的,但原則上它會起作用)

是的,您可以通過Javascript計時器和ajax調用來輪詢會話狀態以檢查服務器會話狀態,然后重定向到登錄頁面,或者,您可以將計時器設置為指定的時間限制(20分鍾或會話超時) )然后重定向到登錄頁面。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM