如何處理瀏覽器的關閉事件以觸發註銷?我們如何在瀏覽器關閉事件中調用註銷servlet
5
A
回答
10
前段時間我一直在尋找一致的解決方案來解決這個問題,而我的決定是在不相信瀏覽器或用戶的情況下處理這種情況。
您無法確定用戶是否要離開您的頁面,何時以及何時使用「onunload」,您可能無法在瀏覽器關閉或離開您的頁面之前獲取該事件。瀏覽器崩潰不會給你任何信號,所以相信你知道用戶仍在查看你的頁面,並可能採取任何進一步的行動是有缺陷的。
對於註銷用戶而言,您可以做的最好的操作是放置一個適配會話超時,如果您需要進一步控制,可以嘗試使用「我還活着」的信號在關鍵頁面上添加AJAX調用,然後註銷那些不再響應的用戶(這需要啓用AJAX/JS的瀏覽器並可能排除潛在用戶)。
5
您正在尋找的onunload的:
window.onunload = function() {
// check the window is closed (see point 1 below)
// do log out
}
有2個問題是:
- 這就是所謂每當用戶導航離開頁面,刷新,或一般卸載以及就像瀏覽器窗口關閉時一樣。
- 瀏覽器之間似乎沒有一致的行爲。
我推薦使用不同的方法。
3
你必須去會話超時。既然你已經標記了你的問題JSP,我認爲它是一個你正在談論的Java Web應用程序。
您通常有一個會話超時偵聽器,並在偵聽器中有「註銷」代碼。
通常不會依賴客戶端事件:瀏覽器/系統崩潰,關閉而不關閉瀏覽器等不會觸發事件。
+0
請你詳細說明,或者你可以發送給我例子 – DJJ 2010-10-21 12:40:37
相關問題
- 1. 在瀏覽器關閉註銷
- 2. IE瀏覽器在關閉瀏覽器後做註銷
- 3. 瀏覽器關閉時自動註銷
- 4. 當瀏覽器關閉時註銷Magento
- 5. Magento - 當瀏覽器關閉時註銷
- 6. 如何在瀏覽器關閉時自動註銷用戶?
- 7. 如何在瀏覽器關閉時自動註銷用戶?
- 8. 如何在flex 3中關閉瀏覽器時處理註銷?
- 9. 如果瀏覽器在asp.net中關閉,則從瀏覽器註銷?
- 10. 關閉瀏覽器事件
- 11. 瀏覽器關閉事件
- 12. 調度Flash當人們關閉瀏覽器時的事件
- 13. 如何讓我的網站在關閉瀏覽器時自動註銷用戶?
- 14. 在硒瀏覽器中獲取瀏覽器關閉事件
- 15. 在Android瀏覽器中捕捉瀏覽器關閉事件
- 16. 我想在瀏覽器關閉後在每個瀏覽器中註銷我的應用程序?
- 17. ASP.NET - 在瀏覽器選項卡上關閉用戶註銷
- 18. 在zend關閉瀏覽器時註銷用戶
- 19. 在瀏覽器中註銷成員關閉
- 20. 當瀏覽器/標籤關閉時調用我的註銷功能
- 21. 關於瀏覽器關閉事件
- 22. 如何在瀏覽器中關閉瀏覽器以銷燬會話和cookie 4
- 23. 當用戶關閉瀏覽器時自動註銷用戶
- 24. 如果瀏覽器關閉,自動註銷laravel
- 25. 自動註銷,如果瀏覽器被關閉
- 26. 用戶關閉瀏覽器而不註銷
- 27. 當瀏覽器窗口關閉時自動註銷用戶 - salesforce
- 28. 當用戶關閉瀏覽器時,保存註銷時間
- 29. 避免彈出應用程序註銷瀏覽器關閉
- 30. 在瀏覽器上註銷關閉彈簧mvc
+1 - 不要依賴瀏覽器。 – Nivas 2010-10-21 10:47:54
我同意你的解決方案,但是我想在註銷之前用戶關閉瀏覽器時自動添加此處理以註銷。在我的應用程序中,如果用戶直接關閉瀏覽器而不註銷,則用戶無法在20分鐘之前登錄。 – DJJ 2010-10-21 12:44:09
請記住,無論您提出什麼要求,無論多麼聰明,都不會放棄註銷信號,正如我上面所解釋的。您可以使用'onunload'發送一個註銷命令,但是您必須正確處理,以免導致用戶導航到系統的另一個頁面,而且它不會一直工作。我誠懇的意見是,這是不值得的努力。只是因爲失去的會話因超時而死亡。 – mdrg 2010-10-21 15:21:47