Я использую jQuery для одновременного извлечения нескольких фрагментов данных. Основой требования является то, что разные биты данных занимают разные промежутки времени, чтобы стать доступными, поэтому я хочу отображать каждую часть по мере ее возврата.
Проблема заключается в том, что запросы кажутся "queue"; следующий запрос не возвращается до тех пор, пока предыдущий не вернется. После обширного чтения кажется, что опция "async: false" может быть тем, что мне нужно, но это, похоже, не имеет значения.
От отладки TCP/IP я вижу, что браузер не инициирует более одного соединения; он использует то же соединение, когда предыдущий запрос вернулся.
В свое время я видел много сайтов, которые загружают данные по ajax одновременно, поэтому, очевидно, это возможно, но я рву свои волосы, пытаясь заставить это работать.
Вот мой код:
$.ajax({
type: "GET",
async: false,
url: "foo1.php"
});
$.ajax({
type: "GET",
async: false,
url: "foo2.php"
});
$.ajax({
type: "GET",
async: false,
url: "foo3.php"
});