点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
在我的网站内,有一个标题,该标题使用户无需访问("/img/login")URL即可登录。 此标头具有其自己的AuthenticationSuccessHandler,我需要确定按下按钮时用户在哪个URL上。
我不知道如何获取URL以及如何重定向回用户登录的当前页面。 主要只有以下三种情况:
1.如果用户位于产品页面("/img/p/")上,则需要将其重新放置在产品页面上。
2.如果用户 在搜索页("/img/search")上,它们将重新放置在搜索页上。
3.如果没有遇到任何情况,请将用户重定向到主页。 (无论在Spring-security-mvc.xml中,我都将用户重定向到首页)
公共类GUIDAuthenticationSuccessHandler实现AuthenticationSuccessHandler {
私有GUIDCookieStrategy guidCookieStrategy;
私有AuthenticationSuccessHandler authenticationSuccessHandler;
@Override
public void onAuthenticationSuccess(最终HttpServletRequest请求,最终HttpServletResponse响应,最终Authentication认证)抛出IOException,ServletException {
字符串引荐来源= request.getHeader(" referer");
如果(referer.contains("/img/p/")){
response.sendRedirect(referer);
否则,如果(referer.contains("/img/search")){
response.sendRedirect(referer);
}其他{
getGuidCookieStrategy()。setCookie(request,response);
getAuthenticationSuccessHandler()。onAuthenticationSuccess(请求,响应,身份验证);
}
}
@需要
public void setGuidCookieStrategy(final GUIDCookieStrategy guidCookieStrategy)
{
this.guidCookieStrategy = guidCookieStrategy;
}
受保护的AuthenticationSuccessHandler getAuthenticationSuccessHandler()
{
返回authenticationSuccessHandler;
}
@需要
公共无效setAuthenticationSuccessHandler(最终AuthenticationSuccessHandler authenticationSuccessHandler)
{
this.authenticationSuccessHandler = authenticationSuccessHandler;
}
}
有人可以帮忙吗? 但是,当我转到其他页面(如我的帐户和注销)时,我已经能够重定向到相应的页面。 然后重新登录,尽管我的defaultTargetUrl设置为"/",但仍应重定向到首页,我还是被带到了我的帐户。
嗨
您可以在进入搜索页面时将一个变量放入会话中,通过搜索更新该变量,使其适用于所有页面,登录网站后检查变量值是否为空,转到
重定向到首页 页面
谢谢,布拉巴卡
一周热门 更多>