每个服务拦截器可能对用户有用吗?

时间:2015-06-15 22:16:34

标签: angularjs angular-services

是否可以基于每个服务覆盖我的authInterceptor?

我想要完成的任务:

我正在为自己的api使用JWT,但偶尔我使用的是Google Apis,需要将我的授权标头重置为我的google身份验证令牌,而不是我的本地身份验证令牌。这是我到目前为止所拥有的。它使用我自己的api令牌在全站点设置我的授权标头。那么如果我要创建一个GoogleService,我该如何覆盖呢?

services.factory('authInterceptor', function ($rootScope, $q, $window, $log, localStorageService) {
return {
    request: function (config) {

        config.headers = config.headers || {};
        config.headers.Authorization = 'Bearer '+localStorageService.get('token');
        return config;
    },
    response: function (response) {
        return response || $q.when(response);
    }
};
});

services.config(function ($httpProvider) {
$httpProvider.interceptors.push('authInterceptor');
});

0 个答案:

没有答案