我正在尝试使用 jQuery 并行发出两个 ajax 请求,如下所示:
var sources = ["source1", "source2"];
$(sources).each(function() {
var source = this;
$.ajax({
async: true,
type: "POST",
data: {post: "data", in: "here"},
url: "/my/url/" + source,
success: function(data) {
process_result(data);
}
});
});
我得到了基本结构这个问题 https://stackoverflow.com/questions/1060539/parallel-asynchronous-ajax-requests-using-jquery,但我的请求仍然没有并行提出。 “source1”需要一段时间才能完成,我可以在服务器上看到,直到第一个请求完成后才发出第二个请求。
据我所知,我没有任何其他活动请求,因此我认为这不是浏览器最大并行请求数的问题。我在这里还缺少其他东西吗?
jQuery 不会对 AJAX 请求进行排队。如果你是sure您没有向服务器发出任何其他请求,那么服务器怎么样?也许它只有一名工人?
EDIT:为了确保这一点,我使用一个脚本对其进行了测试,该脚本向 PHP 脚本发起 2 个 AJAX POST 请求,该脚本会休眠 5 秒。他们没有排队。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)