2013-10-01 175 views
0

我使用struts2來創建登錄和註銷功能,當用戶登錄時,我將爲他創建會話,通過使用攔截器我將過濾所有用戶,如果他們在會話中或不如果會議未創建,我將重定向頁面登錄........我的問題是我做了註銷後,將重定向到登錄頁面,但當用戶點擊瀏覽器後退按鈕,頁面將刷新,並再次登錄,,,,,,可能有人幫助我從這個問題如何避免頁面刷新,當我點擊後退按鈕

在此先感謝

+0

任何人都可以幫助我如何在struts 2中設置cookie並檢查每個用戶註銷 – user2767354

回答

0

當你點擊「< - 」按鈕,瀏覽器在瀏覽器呈現來自緩存的頁面。所以服務器不知道你是否有點擊後退按鈕。在你的情況當用戶點擊後退按鈕時,頁面從緩存中加載,但並不意味着該用戶的會話將再次爲登錄。當用戶點擊該頁面上的任何授權鏈接時,你的服務器端代碼將檢查該用戶沒有有效的會話並且返回登錄頁面。
解決方案:但是,如果您不想讓用戶獲得緩存頁面,那麼您可以爲網站中的每個頁面加載腳本,如checkLogin.js。這個腳本應該在頁面的加載事件中執行。用戶註銷時,在Cookie中設置一個變量,指示用戶已註銷。當用戶點擊後退按鈕時,該腳本將被執行。如果用戶已註銷,該腳本將使用提到的cookie變量進行檢查。如果用戶已經註銷,然後使用JavaScript重定向到登錄頁面。

+0

謝謝你的寶貴時間可以解釋我如何做到這一點如果你不介意 – user2767354

+0

你想整個代碼或某些特定的東西如訪問cookie要麼 ... ? –

+0

我對這個struts2很新,可以üplz發帖我整個代碼謝謝你 – user2767354

0

爲了避免這種令人耳目一新,我有我的重定向頁面菜單loginsuccess不轉發我已經在烏拉圭回合的struts.xml從鬼問題 使用這樣逃脫後

<result name= success" type="redirect">Menu.jsp</result> 

感謝所有

相關問題