我在我的应用程序中进行了大量的API调用,比如50。
完成所有api通话的总时间约为1分钟。所有api调用的优先级都是2.我启用了角度缓存。
因此,与此同时,如果我的应用程序的用户只想关注所有的api调用,即只有6个api调用。
然后我将再次投射优先级为1的6个api调用。
但我仍然没有得到我的目标?即这6个api调用需要尽快接收数据。
请参考以下示例代码。
初始加载:
for(var i=1,priority=19;i<=19,priority>=1;i++,priority--)
{
$http.get("http://localhost:65291/WebService1.asmx/HelloWorld"+i+"?test=hari",{priority:2})
.then(function(response) { });
}
}
在某些情况下点击:
$http.get("http://localhost:65291/WebService1.asmx/HelloWorld7?test=hari",{priority:1})
.then(function(response) { });
}
答案 0 :(得分:0)
如果您想一次发送多个http请求,请使用$q.all
在循环内部将http请求推送到数组并立即发送该http数组。
var httpArr = []
for (var i = 1, priority = 19; i <= 19, priority >= 1; i++, priority--) {
httpArr.push($http.get("http://localhost:65291/WebService1.asmx/HelloWorld" + i + "?test=hari", {
priority: 2
}))
}
$q.all(httpArr).then(function(response) {
console.log(response[0].data) //1st request response
console.log(response[1].data) //2nd request response
console.log(response[2].data) //3rd request response
})