要解决上述需求1,我们捕捉路有变化事件并对每一路由变化进行检查,看用户是否授权访问下一路由,保证他不会看到拒绝访问的页面
$rootScope.$on("$routeChangeStart",function(event,next,current){
if(!authService.isUrlAccessibleForUser(next.originalPath))
$location.path('/authError');
});
上面的authService是我们创建的一个服务,它有角色用户列表,并给授权用户路由流量。函数isUrlAccessibleForUser()将检查分配的用户是否可以访问给定流量并返回true或false.