4

我已经设法获得有效的安全身份验证,所以基本上我重定向到登录路由是用户没有登录。

这很好用,但我想知道是否有人在做类似的事情,一旦我重定向到登录页面,我想在他们通过身份验证后返回原始页面。Asp.net mvc 在查询字符串上使用 returnUrl 来做到这一点,但我认为这真的很难看。

所以我有。

/items  // this show my items..
/login  // this is the login view.

因此,如果用户转到 /items 并且未登录,我当前正在重定向到登录视图,但是一旦成功登录,我需要将用户重定向到他想要的原始位置,即 /items

我目前正在这样做

    $rootScope.$on("$routeChangeStart", function ( next, current) {

        if (!authentication.getIsLoggedIn())
            $location.path('/login');

    });

如果我无法传递原始 url 或以某种方式存储它,那么成功登录就发生了,我不知道将用户发送到哪里。

喜欢听到任何反馈。

谢谢

4

1 回答 1

1

同意@NuclearGhost,你非常接近。我通过一个 AppLevel 控制器来处理这个问题,该控制器只维护 next 的值,并执行 redirectTo() 以将它们放回身份验证后的位置。

于 2013-07-12T14:34:39.673 回答