jQuery: Выполнение одновременных запросов ajax, возможно ли это?

Я использую jQuery для одновременного извлечения нескольких fragmentов данных. Основой требования является то, что разные биты данных занимают различные промежутки времени, чтобы стать доступными, поэтому я хочу отображать каждую часть по мере ее возврата.

Проблема в том, что запросы кажутся «очереди»; следующий запрос не возвращается до тех пор, пока предыдущий не вернется. После обширного чтения кажется, что опция «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" }); 

Вы хотите асинхронно (по умолчанию). Браузер ограничивает вас двумя запросами в любой момент времени. Это часть спецификации HTTP. ( Спецификация HTTP 1.1, раздел 8.1.4 )

Ввод запросов в очередь – ваш лучший вариант.

Следует отметить, что это можно переопределить в Firefox и, возможно, в некоторых других браузерах. (но, поскольку он не является стандартным, вам это не поможет)

Браузеры ограничивают вас двумя одновременными запросами. Возможно, вы захотите использовать диспетчер очереди, например: http://www.protofunc.com/scripts/jquery/ajaxManager/

  • JSONP с веб-интерфейсом ASP.NET
  • Эквивалент устаревшего события jQuery Toggle
  • jQuery, изменяющий порядок дочерних элементов
  • Обнаружить изменение страницы в DataTable
  • Скрыть параметры в списке выбора с помощью jQuery
  • Как сбросить все флажки с помощью jQuery или чистого JS?
  • Пример jQuery, простой опрос
  • Bootstrap 3 Collapse показать состояние с символом Chevron
  • ipad веб-приложение: как я могу предотвратить появление клавиатуры на jquery datepicker
  • Функция jQuery.active
  • Как установить значение DropDownList с помощью jQuery?
  • Давайте будем гением компьютера.