想使用angularjs里的htpp向后台发送请求,现在有个用户唯一识别的token想要放到headers里面去,也就是{headres:{'token':1}}
index.html里引入以下js:
angular.module('app.factorys',[])
.factory('httpinterceptor',['$q','$injector','$localstorage',function ($q,$injector,$localstorage) {var httpinterceptor = {'responseerror' : function(response) {// ......return $q.reject(response);
},'response' : function(response) {if (response.status == 21000) {// console.log('do something...'); }return response || $q.when(response);
},'request' : function(config) {
config.headers = config.headers || {};if ($localstorage.token) {
config.headers.token = $localstorage.token;// config.headers['x-access-token'] = $localstorage.token; };return config || $q.when(config);return config;
},'requesterror' : function(config){// ......return $q.reject(config);
}
};return httpinterceptor;
}])
在app里注入factory后,在config里面配置
.config(['$httpprovider',function(){
$httpprovider.interceptors.push(httpinterceptor);
}])
以上就是angular用拦截器统一处理http请求和响应实例代码的详细内容。