javascript - 循环中的多个 AJAX 调用

标签 javascript jquery angularjs ajax

我需要一种在 Javascript/Angular 中同时发送多个 AJAX 调用的方法。 经过一番搜索,我找不到答案。 我想做的是尽快发送我所有的请求。 如果我在 for 循环中或在 Angular 中使用 $q 库的 promise 队列中执行我的调用,则会发送一个请求,等待它执行回调,然后发送下一个请求。 这是一个示例代码:

var array = [];
    Page.get({id:1}, function(result){
        for(var i = 0; i < result.region[0].hotspots.length; i++){
            var promise = Hotspot.get({id: result.region[0].hotspots[i].id});
            array.push(promise);
        }
        $q.all(array).then(function(data){
            console.log(data);
        });
    });

Page 是一个 Angular 资源,具有需要 ID 的 get 方法。

我想要的是它们都被同时发送,并在准备就绪时调用它们的回调。返回调用的顺序并不重要。

谢谢

最佳答案

使用 Web Workers 跳出框框思考

解决这个问题的一个有趣方法是使用web workers不同的线程 中执行请求。如果你不熟悉网络 worker ,我建议你从这个开始 great tutorialtechsith .基本上,您将能够同时执行多个作业。另见 W3Schools Documentation .

enter image description here

article来自 Html5Rocks教我们如何在没有单独的脚本文件的情况下使用 Web Workers。

关于javascript - 循环中的多个 AJAX 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36693649/

相关文章:

javascript - 如何在 Elm 中通过 id 检查元素矩形?

javascript - 我如何通过 $.ajax 调用使用成功函数

javascript - 来自指令模板 AngularJS 的事件

javascript - Angularjs - 将服务数据绑定(bind)到许多 Controller 中的模型

javascript - 如何将值添加到元素属性的末尾? - JavaScript

javascript - 来自Cloudflare CDN的链接jQuery脚本在控制台中的“sub-include” underscore-min.js上引发CSP错误

javascript - 在其中绘制垂直虚线和圆圈的折线图

jquery - WordPress : change menu labels on mouse-over

javascript - 无法弄清楚为什么 ng-resource 不会返回数组

angularjs - 如何告诉 ui-Bootstrap 对哪些内容进行分页?