Я хотел бы запустить цикл запроса Axios, вызывающего серверную часть, и дождаться всех ответов, прежде чем перенаправить страницу.
В следующем коде, как только я получу ответ 200 OK, я хочу передать его в блок обещаний. Если я получу все элементы обещания Array, я бы хотел перенаправить страницу на другой URL.
В моем случае кажется, что код не останавливается в ожидании ответа. он зацикливается на запросе axios три раза, но вместо ожидания ответа он напрямую запускает секцию перенаправления.
Есть идеи?
function test(){
var response = undefined;
var length = 3;
var promiseArray = [];
for(var a=0;a<length;a++){
var link = 'https://'+hostname+'/';
var apiUrl = 'api/xxx';
var token = "123";
axios.create({
baseURL: link,
timeout: 60000,
headers: {
Authorization: token
}
}).post(apiUrl, {
...
}).then(res => {
console.log(res);
promiseArray.push(res);
}).catch(err=>{
console.log("err");
console.log(err);
});
}
response = await axios.all(promiseArray);
if(response!=undefined){
window.location.replace("https://"+hostname+"/abc");
}
}