我有一個在AngularJS/Javascript上開發的Web應用程序,後端是Java/Spring。我有一個與我的Web應用程序的會話管理相關的問題。如何在會話結束時將Web應用程序流重定向到特定頁面?
我已經使用web.xml會話超時參數會話配置如下圖所示設置會話超時,
<session-config>
<session-timeout>1</session-timeout>
</session-config>
現在1分鐘後,會話超時。我有一個場景,在會話超時後需要將我的Web應用程序流重定向到登錄頁面。場景1:如果我點擊任何需要加載新頁面的鏈接/按鈕,它會自動檢測到會話超時,並將應用程序重定向到登錄頁面。這工作很好。
情況2:但如果頁面包含我選擇的任何下拉列表,則應用程序不會重定向到登錄頁面。 這是問題。
通常會發生什麼情況:當我從下拉列表中選擇任何值時,它會對後端進行其餘的調用,並獲取填充頁面上的值所需的數據。現在,如果會話在一分鐘後結束,並且如果選擇下拉菜單,則會話結束時不會撥打任何後端電話。
現在,在這種情況下應該做些什麼來確保即使當我選擇下拉菜單並且會話結束時,它也會以某種方式檢測到它並將應用程序重定向到登錄頁面。有沒有一種方法使用角JS或JavaScript來檢查會話是否仍然活着,當我選擇下拉值,並可以根據需要重定向流量?
考慮到當我選擇下拉式流程不會進入後端時,我想我可能需要僅在客戶端(前端)而不是後端處理此重定向。不知道如何做到這一點。
任何幫助,將不勝感激。
您是否在來自用戶界面的任何請求時進行了身份驗證?如果你這樣做了,那麼你需要檢查會話的時間是否有效。 –
嗨Ramesh,身份驗證是使用Spring安全性完成的。但是,這隻會發生一次,我猜測Web應用服務器何時啓動或啓動。我不知道在登錄之後我是否可以在應用程序中稍後使用該配置。 – WebNoob