我正在使用弹簧安全来限制网址.我想在同一页面上提供注册和登录页面.
登录时,spring security会转移到受限页面.但是我试图将目标URL传递给注册过程,以便在注册后我们可以重定向到受限制的页面.
如何获取用户重定向的实际URL.
有任何想法吗?
这就是我从Spring Security获取URL的方式.
SavedRequest savedRequest = (SavedRequest)session.getAttribute( AbstractProcessingFilter.SPRING_SECURITY_SAVED_REQUEST_KEY); String requestUrl = savedRequest.getFullRequestUrl();
他们在spring security 3.0中移动了一些东西,所以上面的代码片段不再起作用了.不过这样做有诀窍:
protected String getRedirectUrl(HttpServletRequest request) { HttpSession session = request.getSession(false); if(session != null) { SavedRequest savedRequest = (SavedRequest) session.getAttribute(WebAttributes.SAVED_REQUEST); if(savedRequest != null) { return savedRequest.getRedirectUrl(); } } /* return a sane default in case data isn't there */ return request.getContextPath() + "/"; }