Привет всем! У меня возникла проблема с JavaScript и API-запросами. Нужно как-то выйти из цикла, если запрос к API зависает и не отвечает долгое время.
Примерно так:
for (let i = 0; i < 10; i++) {
// Вызов API
let ответ = вызватьAPI();
// Если ответ не пришел за 5 секунд
if (!ответПолучен(ответ, 5000)) {
break; // Выходим из цикла
}
}
Как это лучше реализовать? Может, есть какие-то готовые решения или библиотеки? Буду благодарен за любые идеи!
Можно использовать Promise.race() с таймаутом. Эта конструкция позволит завершить ожидание, если API слишком долго отвечает. Например, создайте промис с reject через setTimeout и объедините его с основным промисом. Кто уже пробовал такое решение? Что думаете?