我对角度$http.get
有一个奇怪的间歇性问题。当我拨打我的休息服务时,我可以从Chrome开发工具中看到GET
请求已发出并且返回状态200 ,但响应内容为空,并且故障回调使用error = null
和status = 0
调用。此外,对于$http.get
的一次调用,GET请求被进行3次(每次返回200,其中包含空内容)。
如果我清除缓存并重新加载我的应用程序,则此错误通常会消失,但随后(有时,并非总是)会在下次加载应用程序时返回。
请求的方式如下:
var deferred = $q.defer();
$http.get(url, {timeout: 15000})
.success(function(result) {
deferred.resolve(result);
})
.error(function(error, status) {
//report error.
deferred.reject(error);
});
return deferred.promise;
以下是http的设置方式:
vizApp.config(['$httpProvider', function($httpProvider) {
$httpProvider.defaults.useXDomain = true;
$httpProvider.defaults.withCredentials = true;
delete $httpProvider.defaults.headers.common['X-Requested-With'];
delete $httpProvider.defaults.headers.post['Content-type'];
}
]);