配置阶段后修改或访问角度拦截器

时间:2015-02-09 01:25:10

标签: angularjs angular-http angularjs-http angular-http-interceptors angularjs-injector

在配置阶段之后是否可以访问/修改$http拦截器?我正在调试一个应用程序,该应用程序由于部署在不同的服务器上而仅在生产中中断,所以很遗憾,我无法在本地更改拦截器代码并找出正在进行的操作。

如果无法访问/修改拦截器,也许可以替换$http。以下是替换假设服务的示例:

var inj = angular.element('body').injector(),
    oldGet = inj.get,
    mockService = { secret: 'shhh' };

inj.get = function(str) {
  if (str === 'some-service') {
    return mockService;
  } else {
    return oldGet.apply(inj, arguments);
  }
};

但是,我不确定如何创建新的$http服务(我可以在修改过的拦截器中传递)。我也无法抓住$httpProvider

也许在页面的单独部分引导新的ng-app会有效吗?然后我可以抓住$http服务并替换它,如上所述。

其他想法:

谢谢!

0 个答案:

没有答案