登录后重定向到包含#(哈希)符号的页面

nKo*_*ito 10 spring spring-mvc spring-security

我正在使用Spring Security,并想知道如果该页面包含#(哈希)符号,如何在成功登录到源页面后实现重定向.

现在我使用always-use-default-target="false"它在URL类型的工作正常:/path/to/page/.

但是当URL变为#/path/to/page它时,它不会进行任何重定向.

有没有办法解决它?

nKo*_*ito 13

这是我最后使用的解决方案:

$(document).ready(function(){
  $('#auth-form').submit(function() {
    var el = $(this);
    var hash = window.location.hash;
    if (hash) el.prop('action', el.prop('action') + '#' + unescape(hash.substring(1)));
    return true;
  });
});
Run Code Online (Sandbox Code Playgroud)

此代码段将哈希值添加到授权表单的操作属性中,而Spring会将您重定向到类型的URL:#/path/to/page没有任何问题.

  • 如果使用带有弹簧后端的angular-js,这非常有用.谢谢! (2认同)