Вам нужно получить какой-то сигнал, когда эти пять запросов будут выполнены. Вы можете сделать это, используя Promise.all
, который принимает массив обещаний и выполняет их, когда все обещания выполнены, и отклоняет, когда хотя бы одно выполняет.
const asyncRequest1 = makeAsyncRequestPromise();
const asyncRequest2 = makeAsyncRequestPromise();
const asyncRequest3 = makeAsyncRequestPromise();
const asyncRequest4 = makeAsyncRequestPromise();
const asyncRequest5 = makeAsyncRequestPromise();
const allDone = Promise.all([
asyncRequest1.then(() => true, () => false),
asyncRequest2.then(() => true, () => false),
asyncRequest3.then(() => true, () => false),
asyncRequest4.then(() => true, () => false),
asyncRequest5.then(() => true, () => false),
]);
allDone.then((results) => {
const someHasFailed = results.some(result => result === false);
if (someHasFailed) {
// make the refresh token here
}
});