一尘不染

所有请求的AngularJS $ http自定义标头

angularjs

我想知道是否可以通过添加自定义信息来配置所有$ http请求标头。像config这样的东西:

 var config = {headers: {
            'Authorization': 'Basic d2VudHdvcnRobWFuOkNoYW5nZV9tZQ==',
            'Accept': 'application/json;odata=verbose'
        }
    };

但是对于所有$ http呼叫,我将使用不同的服务。我敢肯定有一个解决方案:D。谢谢


阅读 220

收藏
2020-07-04

共1个答案

一尘不染

您可以创建一个$http拦截器来扩展标题:

myapp.factory('httpRequestInterceptor', function () {

  return {

    request: function (config) {



      config.headers['Authorization'] = 'Basic d2VudHdvcnRobWFuOkNoYW5nZV9tZQ==';

      config.headers['Accept'] = 'application/json;odata=verbose';



      return config;

    }

  };

});



myapp.config(function ($httpProvider) {

  $httpProvider.interceptors.push('httpRequestInterceptor');

});
2020-07-04