2010-02-11 120 views
0

後頁面訪問當用戶退出應用程序,並且如果在後退按鈕用戶點擊他就可以查看最近訪問過的網頁,並再次完成所有的操作,如何處理這java嗎?問題在註銷

+1

您如何知道用戶已登錄,您在登出時採取了哪些操作? – Lombo 2010-02-11 06:31:41

+0

上登錄,我將作出使用 \t \t會話= request.getSession(真)的新會話; 和註銷是無效的,所以退出後,它再次來到主要的小服務程序和作爲asual,我做錯了什麼? – sarah 2010-02-11 07:59:17

+0

實際上,你並沒有做任何事情來檢查用戶是否仍然登錄。如果用戶在註銷後回來,容器將爲他創建一個全新的會話,並且他將很好地訪問頁面,他不假設沒有登錄。 – 2010-02-11 08:14:49

回答

1

你需要禁用緩存頁面。你可以通過做這樣的事情:

response.setHeader("Cache-Control", "no-cache"); 

閱讀here瞭解更多詳情。

+0

我正在這樣做,但仍然在註銷用戶能夠完成所有操作後。 – sarah 2010-02-11 06:20:58

+0

和'Expires'頭 – Bozho 2010-02-11 06:32:49

+0

雅所有的3頭被添加 # response.setHeader(「緩存控制」,「無緩存」); // HTTP 1.1 # response.setHeader(「Pragma」,「no-cache」); // HTTP 1.0 # response.setDateHeader(「Expires」,0); //防止在代理服務器上緩存 – sarah 2010-02-11 07:57:20

1

第一件事,第一,

  • 存放在日誌時會話的用戶信息在
  • 刪除,退出時該信息。你也應該看看SessionListener,在時間的情況下,基於註銷
  • 從用戶的每個請求都必須經過過濾器檢查的日誌保存在session的時候,如果發現給一展身手的信息,否則重定向登錄頁面。

警告:後退按鈕仍然會用GET請求工作。對於這個考慮kgiannakakis的建議。

好運。