我正在尝试使用 AngularJS 实现客户端身份验证。现在,我将每个路由的访问级别作为工厂注入到我的应用程序的配置功能中。这是我的代码:
shop = angular.module('shop', ['ngCookies']).
provider('AccessLevels',function () {
var accessLevels = {
guest: 7,
customer: 6,
seller: 4
};
return {
$get: function () {
return accessLevels
}
}
}).
config(['$routeProvider', '$locationProvider', 'AccessLevelsProvider', function ($routeProvider, $locationProvider, AccessLevelsProvider) {
var accessLevels = AccessLevelsProvider.$get();
$routeProvider.
when('/index', {templateUrl: "pages/index", controller: IndexController, access: accessLevels.guest}).
when('/user', {templateUrl: "pages/user", controller: UserController, access: accessLevels.customer}).
when('/sign_up', {templateUrl: "pages/sign_up", controller: SignUpController, access: accessLevels.guest});
}]);
是否可以通过 $http.get 请求获取我的访问级别的数据?我无法将 $http 注入到我的提供程序函数中,所以我现在有点无助。任何帮助,将不胜感激。