这个想法是在某些情况下从另一个来源获取数据,所以我有这个存根:
factory("interceptor",function ($q,$location,$http) { return function (promise) { return promise; } }
失败了
[$injector:cdep] Circular dependency found: interceptor <- $http
还试图注入$injector并使用它来检索$http,结果相同.有任何想法吗?
.config只是声明:
.config(function ($httpProvider) { $httpProvider.responseInterceptors.push('interceptor'); });
解决方法
将$injector注入拦截器:
这是一个example
app.config(function ($httpProvider) { $httpProvider.interceptors.push('interceptor'); }); app.factory("interceptor",$injector) { return { request: function(config){ var $http = $injector.get('$http'); console.dir($http); return config; } } }); app.run(function($http){ $http.get('/') });