10.24 2017-01-09 12:08 采纳率: 0%
浏览 38

如何让所有Ajax请求同时启动?

我一直在网上寻找答案,但还是没有解决我的问题。

我正在对同一个PHP脚本进行几次JQueryAjax调用。首先,我看到每个调用都是在前一个调用完成后才执行的。我通过在脚本开头添加Session_WITE_CLOSE()来改变这一点,以防止PHP将会话锁定到其他Ajax调用。我不是在编辑脚本中的$_Session变量,而是从它读取。

现在已经运行得很好了,但是还是没有让所有请求同时启动,而是分块进行,就像图像上看到的那样:https://i.stack.imgur.com/xCkub.png。

我应该怎么做才能让所有请求同时开始,并在没有与其他请求的任何链接的情况下实际执行?为了清晰起见,以下是我的js代码:

        var promises = [];
        listMenu.forEach(function(menu) {
            var res = sendMenu(menu);//AJAX CALL
            promises.push(res);
        });
        $.when.apply(null, promises).done(function() {
            $('#ajaxSpinner').hide();
            listMenu = null;
        });

我的PHP脚本只是插入/更新了数据:

<?php

session_start();
session_write_close();

//execution

我想我肯定哪里做错了。提前感谢您宝贵的帮助!/p>

  • 写回答

1条回答 默认 最新

  • weixin_33714884 2017-01-09 12:23
    关注

    This is probably a browser limitation, there is a maximum number of concurrent connections to a single server per browser instance. In Chrome this has been 6, which reflects the size of the blocks shown in your screenshot. Though this is from 09, I believe it's still relevant: https://bugs.chromium.org/p/chromium/issues/detail?id=12066

    评论

报告相同问题?

悬赏问题

  • ¥50 如何用脚本实现输入法的热键设置
  • ¥20 我想使用一些网络协议或者部分协议也行,主要想实现类似于traceroute的一定步长内的路由拓扑功能
  • ¥30 深度学习,前后端连接
  • ¥15 孟德尔随机化结果不一致
  • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
  • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
  • ¥15 谁有desed数据集呀
  • ¥20 手写数字识别运行c仿真时,程序报错错误代码sim211-100
  • ¥15 关于#hadoop#的问题
  • ¥15 (标签-Python|关键词-socket)