瀏覽器關閉使session失效的問題多種解決方式
更新時間:2013年07月10日 17:24:02 作者:
直接關閉瀏覽器(或者強制關閉瀏覽器進程、死機等),服務器無法處理用戶退出網(wǎng)站的請求,此舉將會導致session失效,下面整理了一些解決方法,感興趣的朋友可以參考下哈
如果用戶不點擊網(wǎng)站的“退出”鏈接,而直接關閉瀏覽器(或者強制關閉瀏覽器進程、死機等),服務器無法處理用戶退出網(wǎng)站的請求,解決方式如下:
方式1:在每個頁面中加入隱藏的IFrame,以異步刷新的方式定期刷新iframe頁面,如每隔10S刷新一次,當服務器在一定的時間內未收到用戶的刷新請求,則認為用戶已經(jīng)退出
優(yōu)點:能在短時間內判斷出用戶是否已經(jīng)退出 缺點:增加用戶請求次數(shù),所消耗的服務器資源較大
方式2:使用cookie保存用戶登錄信息,不要設置cookie的過期時間,當關閉瀏覽器時,cookie會自動過期
優(yōu)點:處理方便 缺點:用戶瀏覽器不一定支持cookie,也就無法實現(xiàn)該方式
方式3:在頁面中添加onunload事件,當關閉瀏覽器時,自動跳轉到“退出”頁面(loginout.action)
優(yōu)點:退出時,能及時進行處理 缺點:當用戶打開多個頁面時,關閉任何一個頁面都有可能導致用戶的退出
方式4:記錄用戶的每次操作時間(包括頁面刷新、提交表單等),在數(shù)據(jù)庫中用作業(yè)每隔一段時間檢查上次的操作時間,當操作時間大于一定的數(shù)值時,就認為該用戶已經(jīng)退出
優(yōu)點:無論哪種非正常退出,都能夠進行處理 缺點:進行檢查的時間間隔不容易確定,如果用戶在線,當長時間未操作,也會認為用戶已經(jīng)退出
方式5:等待session失效
優(yōu)點:你可以不用做任何工作 缺點:用戶可以在你等待的這段時間內重新登錄。
方式1:在每個頁面中加入隱藏的IFrame,以異步刷新的方式定期刷新iframe頁面,如每隔10S刷新一次,當服務器在一定的時間內未收到用戶的刷新請求,則認為用戶已經(jīng)退出
優(yōu)點:能在短時間內判斷出用戶是否已經(jīng)退出 缺點:增加用戶請求次數(shù),所消耗的服務器資源較大
方式2:使用cookie保存用戶登錄信息,不要設置cookie的過期時間,當關閉瀏覽器時,cookie會自動過期
優(yōu)點:處理方便 缺點:用戶瀏覽器不一定支持cookie,也就無法實現(xiàn)該方式
方式3:在頁面中添加onunload事件,當關閉瀏覽器時,自動跳轉到“退出”頁面(loginout.action)
優(yōu)點:退出時,能及時進行處理 缺點:當用戶打開多個頁面時,關閉任何一個頁面都有可能導致用戶的退出
方式4:記錄用戶的每次操作時間(包括頁面刷新、提交表單等),在數(shù)據(jù)庫中用作業(yè)每隔一段時間檢查上次的操作時間,當操作時間大于一定的數(shù)值時,就認為該用戶已經(jīng)退出
優(yōu)點:無論哪種非正常退出,都能夠進行處理 缺點:進行檢查的時間間隔不容易確定,如果用戶在線,當長時間未操作,也會認為用戶已經(jīng)退出
方式5:等待session失效
優(yōu)點:你可以不用做任何工作 缺點:用戶可以在你等待的這段時間內重新登錄。
相關文章
Postman全局注冊方法及對返回數(shù)據(jù)可視化處理
這篇文章主要為大家介紹了Postman全局注冊方法及對返回數(shù)據(jù)可視化處理詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-02-02