Я работаю над унаследованным проектом, в котором я хочу создать функцию, которая имеет значение для l oop. В каждом вызове для l oop мне нужно сделать http-вызов. (максимум 5 звонков). Я попытался сделать обещание Все объекты, которые разрешаются, когда все вызовы сделаны. но по какой-то причине случается так, что обещание все не ждет окончания других запросов sh.
Мой код
function getAllGroupsById(ids) {
console.log('ids', ids);
var deferAll = $q.defer();
var results = [];
for (var i = 0; i < ids.length; i++) {
var endpoint = config.baseGraphApiUrl + "groups/" + ids[i] + "?$select=id,mailNickname,visibility";
var deferred = $q.defer();
$http.get(endpoint).then(function (result) {
results.push(result);
deferred.resolve(result.data);
return deferred.promise;
});
}
console.log('all results', results);
deferAll.resolve(results);
return deferred.promise;
}
Любая помощь будет принята с благодарностью. в худшем случае я должен go вернуться к рекурсивной функции. Приветствия