2

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 を挿入できないので、現時点では少し無力です。どんな助けでも大歓迎です。

4

1 に答える 1