Я пытаюсь реализовать аутентификацию на стороне клиента с помощью 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 в функцию моего провайдера, поэтому в данный момент я немного беспомощен. Любая помощь будет оценена по достоинству.