【发布时间】:2014-07-24 11:02:02
【问题描述】:
我在互联网上尝试了很多解决方案,但都没有成功。
var myDataPromise = loginService.getData();
myDataPromise.then(function(data) { // this is only run after $http completes
if(!isLogin) {
if(!data.logout) {
} else {
$location.url("pages/signin");
}
} else {
if(data.logout) {
$location.url("pages/signin");
} else {
}
}
});
loginService 返回用户状态,无论他是否被授权,并且该服务使用 $http ajax get 请求来获取数据。
我想要的是检查每条路线的用户状态,如果他没有显示请求的页面而没有登录,则重定向到登录页面。
就我而言,有一个问题。如果我在注销后单击浏览器后退按钮,它会显示前一页一段时间,然后重定向到登录页面,如果用户在会话过期后请求页面,浏览器会显示请求的页面一段时间,然后定向到登录页面。这个问题的最佳解决方案是什么?谢谢。
【问题讨论】:
-
看看this
-
我刚刚写了一篇关于这个主题的详细博客文章和示例应用程序jonsamwell.com/url-route-authorization-and-security-in-angular
标签: angularjs authentication angular-ui-router