有沒有辦法訪問從Spring MVC控制器解析的URL - 例如,訪問@Controller時存儲URL Spring MVC
@RequestMapping("/{language}/news/{articleId}")
public String newsPage(...) {
}
解析爲:
/en/news/63421
我想這個存儲與會話,這樣我就可以保持上次訪問的地方的軌道。這裏的動機是,如果是安全網頁登錄過濾器將發揮作用,我們已經使用
SavedRequestAwareAuthenticationSuccessHandler
路由用戶到他們曾經試圖訪問的頁面。
但是,如果他們正在查看不安全的頁面並選擇使用從屏幕頂部下拉的表單(頁面的菜單欄)登錄,則「最後一頁」似乎是登錄表單,因此成功處理程序將丟失他們回到根上下文。
我想攔截控制器調用並在會話中存儲單個URL,覆蓋SavedRequestAwareAuthenticationSuccessHandler以允許我們修改RequestCache,然後讓Spring重定向登錄成功。
理想情況下,我們希望通過一種通用的方式在所有控制器上執行此操作,但不確定是否有篩選器可用於選擇此篩選請求獲取各種噪聲,如css,js,圖像和html片段因此我們希望有人知道只有控制器本身才能做到這一點。
我們確定存儲在會話中,因爲我只需要在用戶選擇登錄時發生的行爲,所以它只會影響登錄成功重定向。好點,但我會添加一些意見,警告這個屬性,謝謝。 – user1016765