2016-08-19 194 views
2

我有一個基於jsp的網站,我正在跟蹤mysql數據庫中的登錄時間。 我也在跟蹤mysql數據庫中的註銷時間。 但是註銷時間只有在用戶通過正確的方法註銷時纔有效,即通過單擊註銷按鈕。 如果用戶直接關閉瀏覽器,那麼我無法跟蹤註銷時間。 請幫助。如何跟蹤用戶直接關閉瀏覽器時的註銷活動

回答

0

這種情況的典型方法是使用Heart-beat監視器。簡單的想法是:從客戶端代碼(通過AJAX)向服務器發送每個特定的時間段請求。當下一個請求不會到達時,您會明白用戶已關閉瀏覽器。

您還可以在這裏讀到它:在時間跟蹤http://softwareas.com/heartbeat-pattern-supporting-library/

0

什麼都可以你的錯誤準則?

如果它可以達到30分鐘,那麼你可以用HttpSessionBindingListener來完成。這將

否則,如果它非常長達5分鐘或更少,然後如上建議你可以做一個ajax調用一個單獨的servlet,將上次請求的時間更新到數據庫。如果您更新數據庫中收到的最後一個請求的時間,那麼您甚至不需要檢查先前的請求和當前請求。

For example,如果你選擇第二個選項,我在12:05 am打開一個頁面並保持打開直到12:19,然後關閉我的瀏覽器,然後在你的數據庫中,我的最後一次請求時間將是12:15 AM,如果你每隔5分鐘從客戶端調用一次服務器。他可以解決你的問題。

有些公司採用某種類似的方式,使用不同的登錄方式,即提取一些數據,而不是更新某些數據庫,以保持會話一天不變,即使您只是保持瀏覽器打開狀態,甚至在登錄後不執行任何操作。

相關問題