瀏覽器關閉使session失效的問題多種解決方式
更新時間:2013年07月10日 17:24:02 作者:
直接關閉瀏覽器(或者強制關閉瀏覽器進程、死機等),服務器無法處理用戶退出網站的請求,此舉將會導致session失效,下面整理了一些解決方法,感興趣的朋友可以參考下哈
如果用戶不點擊網站的“退出”鏈接,而直接關閉瀏覽器(或者強制關閉瀏覽器進程、死機等),服務器無法處理用戶退出網站的請求,解決方式如下:
方式1:在每個頁面中加入隱藏的IFrame,以異步刷新的方式定期刷新iframe頁面,如每隔10S刷新一次,當服務器在一定的時間內未收到用戶的刷新請求,則認為用戶已經退出
優(yōu)點:能在短時間內判斷出用戶是否已經退出 缺點:增加用戶請求次數,所消耗的服務器資源較大
方式2:使用cookie保存用戶登錄信息,不要設置cookie的過期時間,當關閉瀏覽器時,cookie會自動過期
優(yōu)點:處理方便 缺點:用戶瀏覽器不一定支持cookie,也就無法實現該方式
方式3:在頁面中添加onunload事件,當關閉瀏覽器時,自動跳轉到“退出”頁面(loginout.action)
優(yōu)點:退出時,能及時進行處理 缺點:當用戶打開多個頁面時,關閉任何一個頁面都有可能導致用戶的退出
方式4:記錄用戶的每次操作時間(包括頁面刷新、提交表單等),在數據庫中用作業(yè)每隔一段時間檢查上次的操作時間,當操作時間大于一定的數值時,就認為該用戶已經退出
優(yōu)點:無論哪種非正常退出,都能夠進行處理 缺點:進行檢查的時間間隔不容易確定,如果用戶在線,當長時間未操作,也會認為用戶已經退出
方式5:等待session失效
優(yōu)點:你可以不用做任何工作 缺點:用戶可以在你等待的這段時間內重新登錄。
方式1:在每個頁面中加入隱藏的IFrame,以異步刷新的方式定期刷新iframe頁面,如每隔10S刷新一次,當服務器在一定的時間內未收到用戶的刷新請求,則認為用戶已經退出
優(yōu)點:能在短時間內判斷出用戶是否已經退出 缺點:增加用戶請求次數,所消耗的服務器資源較大
方式2:使用cookie保存用戶登錄信息,不要設置cookie的過期時間,當關閉瀏覽器時,cookie會自動過期
優(yōu)點:處理方便 缺點:用戶瀏覽器不一定支持cookie,也就無法實現該方式
方式3:在頁面中添加onunload事件,當關閉瀏覽器時,自動跳轉到“退出”頁面(loginout.action)
優(yōu)點:退出時,能及時進行處理 缺點:當用戶打開多個頁面時,關閉任何一個頁面都有可能導致用戶的退出
方式4:記錄用戶的每次操作時間(包括頁面刷新、提交表單等),在數據庫中用作業(yè)每隔一段時間檢查上次的操作時間,當操作時間大于一定的數值時,就認為該用戶已經退出
優(yōu)點:無論哪種非正常退出,都能夠進行處理 缺點:進行檢查的時間間隔不容易確定,如果用戶在線,當長時間未操作,也會認為用戶已經退出
方式5:等待session失效
優(yōu)點:你可以不用做任何工作 缺點:用戶可以在你等待的這段時間內重新登錄。
相關文章
關于VSCode 裝好ESLint 插件 import 報黃線的問題
這篇文章主要介紹了VSCode 裝好ESLint 插件 import 報黃線的問題,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-11-11
快速解決eclipse中注釋的代碼依然會執(zhí)行的問題
下面小編就為大家?guī)硪黄焖俳鉀Qeclipse中注釋的代碼依然會執(zhí)行的問題。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-12-12

