[英]forEach with $http.get how to handle when request stays pending and never returns
这是我第一次使用 angular,因此对糟糕的编码感到非常抱歉。
问题:我在 forEach 循环中有一个 $http.get ,它从 WebApi 获取数据。 这工作正常,直到某些呼叫保持挂起并且永远不会收到回电。 当呼叫保持挂起时,如何编写一些逻辑来处理?
每小时.js
$http.get('http://localhost:52332/api/HourlySummary/?' + 'div=' + divarg + '&line='+ i.line)
.then(function (response) {
console.log('http then ', i.line);
count++;
if (i.line == 'S') {
storeS.valuesS = response.data;
$scope.date = Date.now();
} else if (i.line == 'M') {
storeM.valuesM = response.data;
$scope.date = Date.now();
} else if (i.line == 'L') {
storeL.valuesL = response.data;
$scope.date = Date.now();
}
if (count == 3) {
myLoop();
}
}, function (response) {
console.log("Somehting went wrong ", i.line);
});
您可以在请求上设置超时:
$http.get('/urlpath/', { timeout: 10000 }) // wait 10 seconds
我认为这会在响应中放置 -1 的状态代码。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.