Так что я сейчас работаю над проектом, где я делаю http-запрос с угловым примерно до 1500 URL-адресов, ищущих json, который соответствует состоянию, которое у меня есть (только 1 URL-адресов будет соответствовать). В настоящее время у меня есть реализация, которая иногда работает (но не является детерминированной, я предполагаю, потому что запросы асинхронны, хотя это может быть просто ошибка?). Я по-прежнему новичок в угловатости, поэтому не уверен, что я делаю это правильно, поэтому я открыт для полного изменения кода!AngularJS looping через http get req, чтобы найти правильный url
this.matchingurl;
this.data;
this.findUrl = function(condition) {
var that = this;
for (var i = 0; i <= ; i++) {
// this is just looping through the url list
for (var i = 0; i < urlList.length; i++) {
for (var j = 0; j < urlList[i]['list'].length; j++) {
this.url = 'http://' + urlList[i]['list'][j] + restofurl;
var tempUrl = urlList[i]['list'][j];
$http.get(this.url).success(function(data) {
if (condition is met in data) {
that.matchingurl = tempUrl;
return;
}
})
.error(function(data){
// error handling
});
}
}
}
}
TLDR: matchingUrl - это не то, что я ожидаю? Все еще идет внутри цикла «условие», но не выплевывает правильный URL-адрес. Всегда дает мне тот же «url» для любого подсписка, правильно или неправильно.
Я не понимаю, почему вы должны использовать '$ http.get()', если у вас уже есть URL, в массивах и хотите, чтобы сравнить его с чем-то? Также вы можете показать, как структурируются ваши списки? –
@ DanielB, он хочет сравнить СОДЕРЖАНИЕ взятых данных с чем-то, а не с самим URL-адресом. – Fissio
Это то, что я думал изначально, но способ формулировки вопроса и кода и его названия заставляют его звучать одинаково. Тем не менее, было бы неплохо увидеть структуру массивов URL. –