对于基于角色的授权,您必须管理您的app.config
和app.run
文件。只需应用以下设置:
在app.config
文件中:
$routeProvider.when( '/', {
templateUrl: 'views/dashboard.html',
resolve: {
"currentAuth": [ "authService", function( authService ) {
var auth = authService.auth();
return auth;
}]
}
});
app.run( [ authService, function(authService) {
if (role === "admin") {
// Use changeSuccess method on route to redirect.
}
} ] );
并authService
从数据库中获取角色。在 authservice 添加方法中:
function functionName(user){
if (user) {
if (!!~this.roles.indexOf('*')) {
return true;
} else {
for (var userRoleIndex in user.roles) {
for (var roleIndex in this.roles) {
if (this.roles[roleIndex] === user.roles[userRoleIndex]) {
return true;
}
}
}
}
} else {
return this;
}
return false;
}