У меня проблема с асинхронным http.get. В цикле у меня есть http.get, и я думаю - в этом случае - лучше будет синхронный метод. Как вы думаете? Как я могу решить эту проблему?синхронный http.get угловой 2, ионный 2
Я использую Ионные 2.
Ниже мой код:
for (var key in this.beacons) {
alert('beacon id: ' + this.beacons[key]['url']);
this.http.get('http://website.com/app.php?id=' + this.beacons[key]['url']).map(res => res.json()).subscribe(
data => {
this.json = data.config;
alert('alert json, id: ' + this.beacons[key]['url']);
}, error => {
this.jsonError = true;
}
);
if (this.json['id']) {
alert('alert end, id: ' + this.beacons[key]['url']);
break;
}
}
В начале я получаю около 10 предупреждений «маяком идентификатор», и в конце концов я получаю «предупреждение» JSON.
То, что я хочу добиться:
- В массиве У меня есть около 10 пунктов
- Каждой петли сделать запрос к серверу с URL маяка
- только несколько маяков получает массив в ответ
- Когда Я получаю первый ответ JSON с конфигурационным массивом, я хочу разбить петлю
Проблема в том, что ответ приходит поздно nd Я не могу поддерживать цикл прерывания и т. д.