2017-08-08 98 views
-3

我嘗試發送16個異步請求到我的後端。AJAX異步不起作用

$.each(response, function(k, v) { 
    uploadAdditionalRows(v) 
}); 

function uploadAdditionalRows(value) { 
       $.ajax({ 
        url: "/asins/table_data/" + encodeURIComponent(value), 
        cache:false, 
        type: "GET", 
        success: function(response) { 
         console.log(response); 
        } 
       }); 

       return; 
      } 

但他們返回執行一個又一個。

enter image description here

怎麼得到迴應這個樣子? :

enter image description here

+0

@Igor說。 HTTP請求需要一定的時間才能啓動,並且您不能同時啓動很多請求......但您的調用不會等待另一端的結束,因此它們是異步的。嘗試一個同步AJAX,你會看到它的作用。它實際上完全凍結了瀏覽器。 – Salketer

+0

看到你的回覆只是幾個字節,你應該增加每個請求發送的數據量...... – Salketer

+0

現在它只是空的響應。 – user2264784

回答

5

瀏覽器上執行的同時HTTP連接他們將打開的數量(和連接的數目較小限制於任何給定結構域)的限制。

如果超出該限制,請求將進入隊列。

你可以看到這個,前四個在同一時間開始,然後其餘的被延遲。

+0

我明白了,但什麼解決方案? – user2264784

+0

唯一的解決方法是限制您需要進行的HTTP調用......可以使用服務器端腳本來聚合請求或其他內容。 – Salketer

+0

如何得到第二張照片中的回覆? – user2264784