并发Ajax调用?

时间:2015-08-24 19:03:48

标签: jquery ajax

我需要多次在我的服务器上调用一个特定的PHP脚本。由于每次呼叫都需要一些时间(例如大约0.5秒)并且每次呼叫彼此独立,我想同时调用脚本。现在,我有这样的事情:

$(document).ready(function() {

    $.ajax({
      url: 'main.php',
      method: 'POST',
      data: { foo: 'foo' },
      success: function(result) {
        console.log(result);
      }
    });

    $.ajax({
      url: 'main.php',
      method: 'POST',
      data: { bar: 'bar' },
      success: function(result) {
        console.log(result);
      }
    });

});

我没有按顺序进行这些调用,而是希望同时执行这些调用。我该怎么做?

2 个答案:

答案 0 :(得分:1)

不确定您遇到了什么问题,但 进行并发AJAX调用,因为jQuery默认为async: true。如果它默认为false那么它将被称为SJAX lol

您可能遇到的一个问题是会话处理锁定。

如果main.php正在使用session_start(),那么它只会将条形码请求排队,直到foo结束。或者您可以手动调用session_write_close()以避免锁定。

答案 1 :(得分:0)

Ajax请求本质上是异步的。根据您的示例,每个调用都将发送,而不必等待服务器的响应