1. 程式人生 > >Angular http 攔截器

Angular http 攔截器

Angular http 攔截器

宣告工廠方法

angular.factory('httpInterceptor',function($q){
    return {
        // 請求的攔截
        request: function (config) {
            config.headers = config.headers || {};
            // let token = JSON.parse(window.localStorage.getItem("token")) || "";
            // config.headers.Authorization = 'Bearer ' + token.access_token;
            return config;
        },
        // 攔截響應
        response: function(response) {
            // console.log("響應");
            // console.log(response);
            return response;
        },
        // 攔截請求錯誤
        responseError:function(errorReason){
            // console.log('請求錯誤');
            // console.log(errorReason);
            return $q.reject(errorReason);
        },
        // 攔截響應錯誤
        requestError:function(errorReason){
            // console.log('攔截響應錯誤');
            return $q.reject(errorReason);
        }
    };
})

注入物件,config階段啟用攔截器

angular.config(function($httpProvider){
  $httpProvider.interceptors.push('httpInterc