Клуб API Карт

Как победить асинхронность обратного геокодирования?

Пост в архиве.
Столкнулся с очередной проблемкой. Есть пара координат, необходимо в цикле произвести обратное их геокодирование и сохранить в базу. Как это сделать если геокодирование - асинхронно. Если кто-то сталкивался с этим подскажите, пожалуйста.
5 комментариев
Александр Новиков
28 января 2016, 05:58

А в чем проблема?

В результате работы геокодера вызывается обработчик - там и делайте что вам нужно. И без разницы пара координат или десяток.

И кстати может быть для вашей задачи правильней будет использовать геокодер чере http

проблема в том, определить момент когда прийдёт ответ. Если запустить цикл и в него поместить массив из 5 координат, то цикл не будет ждать, пока прийдёт ответ о геокодировании.
Александр Новиков
28 января 2016, 05:58

Да, цикл не будет ждать.

Но при создании геокодера вы указываете функцию, которая вызывается после завершения геокодирования.

В вашем случае эта функция вызовется пять раз - отдельно с результатами для каждой точки.

решил проблему путём сохранения уникального идентификатора для каждой пары координат и последующем сопоставлении идентификатора и пары координат при получении ответа от yandex сервера