1

同じクライアントから同じページでいくつかのAJAX呼び出しを実行したいと思います。Ajax呼び出しは正しく開始されますが、サーバーはリクエストをキューに入れ、jsutを1回ずつ実行します。

開始リクエスト時間と返されるメッセージ時間も確認しました。2番目のリクエストを調べると、リクエスト間に違いがあり、以前のリクエストよりも複数あります。

お願い助けて!

$("document").ready(function() { 
    $(".user-id").each(function() { 
        var id = $(this).html(); 
        getData(id); 
    }); 
}); 
function getData(id) { 
    $.ajax({ 
            url: 'loadOperatorDiagram.php', 
            type: 'GET', 
            data: {id: id}, 
            async: true, 
            cache: false, 
            success: function(resp) { 
                 $("#boxes").append(resp); 
                 draw(id); // A javascript function which draw into a canvas
             } 
    }); 
} 

loadOperatorDiagram.phpはいくつかのクエリを取得し、その実行時間は約5秒です。最初のajaxは5秒後に応答を要求し、2番目は10秒後に応答を要求します。しかし、誰もが数ミリ秒の差で非同期的に正しく開始します

4

1 に答える 1

1

PHP でセッションを使用している場合 (そのように聞こえますが、それ以外の場合は、少なくとも 2 つの同時要求を行うことができます...)、php がセッションをブロックするため、php スクリプトでできるだけ早くセッションを閉じる必要があります。

session_write_close();セッションで必要なものが手に入ったらすぐに使用してください。

于 2012-10-09T13:43:17.640 に答える