Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 06.08.2017, 19:45
Интересующийся
Отправить личное сообщение для koha345 Посмотреть профиль Найти все сообщения от koha345
 
Регистрация: 16.04.2016
Сообщений: 28

Асинхронные запросы с ожиданием
Имеется main-функция, в которой висит цикл.
В цикле для каждого элемента массива вызывается 2 асинхронные sub-функции.
Обе функции отправляют ajax-запросы к сервису на получение данных. Сервис не предусматривает отдачу сразу всех данных. Данные приходится загружать пачками, по чуть-чуть. После получения ответа снова вызывается эта же функция (рекурсивно) до тех пор, пока не будут получены все записи. Мне необходимо сделать так, чтобы после каждого запроса выполнялась пауза в 2 секунды и таким образом, чтобы это учитывалось между sub-функциями.
Т.е. запускается цикл с элементом 1. Вызывается асинхронная sub-функция с элементом 1. После получения данных выжидание 2 секунды и снов запрос в эту же функцию. Если все данные получены, тогда снова пауза 2 секунды и идет переход к следующей sub-функции, которая так же выполняется, ожидает 2 секунды и снова выполняется до получения всех данных.
Далее для цикла берется элемент 2 и уже для него все повторяется, что было описано выше.
Таким образом на сервис отправляется запрос и я уверен, что после выполнения будет пауза в 2 секунды.
Я не могу ajax-сделать синхронным, т.к. он подвесит страницу.
Я видел примеры с promise, но как их использовать в цикле и еще в рекурсии - не понимаю.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вложенные Ajax запросы Sherminator AJAX и COMET 10 03.10.2016 05:11
Generators и асинхронные запросы в БД node.js madgals Node.JS 2 14.05.2015 09:31
Кроссдоменные запросы aze AJAX и COMET 1 27.01.2012 02:43
IE/chrome асинхронные запросы zebra AJAX и COMET 1 23.10.2011 04:19
Асинхронные запросы zebra Общие вопросы Javascript 2 11.10.2011 14:48