I need to process an unknown number of AJAX requests (1 or more) with axios, and I am not sure how to handle the response. I want something along the lines of:
let urlArray = [] // unknown # of urls (1 or more)
axios.all(urlArray)
.then(axios.spread(function () {
let temp = [];
for (let i = 0; i < arguments[i].length; i++)
temp.push(arguments[i].data);
}));
where arguments will contain the callback responses sent by axios. The problem is that arguments
contains the given string urls instead of the actual responses. How can I resolve this problem?
You somewhere will need to make the actual requests. And then don't use spread
but only then
to receive the array of results:
let urlArray = [] // unknown # of urls (1 or more)
let promiseArray = urlArray.map(url => axios.get(url)); // or whatever
axios.all(promiseArray)
.then(function(results) {
let temp = results.map(r => r.data);
…
});
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With