这是我第一次使用angular非常抱歉这个糟糕的编码。
问题:我在forEach循环中有一个$ http.get,它从WebApi获取数据。这可以正常工作,直到某些呼叫保持挂起状态并且永远不会收到回叫。如何在呼叫保持挂起时编写一些逻辑来处理?
Hourly.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);
});
答案 0 :(得分:0)
您可以在请求上设置超时:
$http.get('/urlpath/', { timeout: 10000 }) // wait 10 seconds
我认为在响应中放置了状态代码-1。