【问题标题】:Improving concurrent AJAX file upload performance提高并发 AJAX 文件上传性能
【发布时间】:2012-11-20 05:07:18
【问题描述】:

我的网站有 AJAX 文件上传,在并发文件上传的情况下速度非常慢。您可以在此处查看详细信息,Concurent AJAX file upload LIMIT。所以我正在寻找在第一次上传完成后,但在其他操作完成之前开始我的第二个 AJAX 请求的方法(比如将文件移动到 S3、创建示例、数据库操作等)。因为我认为发布的文件只会使浏览器过载(因为正常的 AJAX 请求在比较时非常快)。那么,我的想法是否正确?有没有办法在 AJAX 请求完成之前找到上传完成的时间?

或者在Javascript中无论如何都可以找到浏览器是否已经重载?提前致谢。

【问题讨论】:

    标签: php jquery file-upload ajax-upload


    【解决方案1】:

    你可以在异步模式下使用 ajax false

    $.ajax({
        async: false,
        // ...
    
    });
    

    这将防止在 ajax 请求结束之前触发下一行

    你可以在成功选项中包含一些操作:

    $.ajax({
      url: 'ajax/test.html',
     async: false,
      success: function(data) {
        // do somethings after you receive the post results (data)
      }
    

    });

    【讨论】:

    • 您好 bleuscyther,谢谢您的回答。但是这个问题不是关于排队 AJAX 请求。但是要查找值是否在它结束之前发布,即,甚至在成功事件触发之前:)
    • True :),我的错,下次会更加小心:)。也许您想先上传文件,然后执行最后一个 ajax() 来处理所有文件?
    猜你喜欢
    • 2012-11-07
    • 2012-05-24
    • 1970-01-01
    • 2011-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多