【发布时间】:2016-08-21 01:07:38
【问题描述】:
你好哦神圣的stackoverflow!
我正在尝试使用 angular-permissions 为我的应用创建三个角色。用户、管理员和合作伙伴。我阅读了整个 wiki,这就是我想出的:
.run(function (PermPermissionStore, PermRoleStore) {
var userPermissionsArray = ['seeUserDashboard'];
var adminPermissionsArray = ['seeAdminDashboard'];
var partnerPermissionsArray = ['seePartnerDashboard'];
PermRoleStore
.defineManyRoles({
'USER' : userPermissionsArray,
'ADMIN' : adminPermissionsArray,
'PARTNER' : partnerPermissionsArray
});
PermPermissionStore
.defineManyPermissions(userPermissionsArray, function (permissionName) {
return _.contains(userPermissionsArray, permissionName);
});
PermPermissionStore
.defineManyPermissions(adminPermissionsArray, function (permissionName) {
return _.contains(userPermissionsArray, permissionName);
});
PermPermissionStore
.defineManyPermissions(partnerPermissionsArray, function (permissionName) {
return _.contains(userPermissionsArray, permissionName);
});
})
我的问题是这样的。如何验证当前会话并将其分配给特定角色?另外,我是否正确地为角色分配了权限?我的想法是运行验证 API 调用,并且 API 将返回客户端令牌解析到的角色。我想做这样的事情,但 defineManyRoles 没有返回承诺!
PermRoleStore
.defineManyRoles({
'USER' : userPermissionsArray,
'ADMIN' : adminPermissionsArray,
'PARTNER' : partnerPermissionsArray
})
.then(function onSuccess() {
return $http.put('/api/validation/global')
.then(function onSuccess(res) {
return $q.resolve();
})
.catch(function onError(res) {
return $q.reject();
});
})
.catch(function onError(res) {
console.log(res);
});
【问题讨论】:
标签: angularjs permissions