ArturMavlidov
@ArturMavlidov

Как отправлять fetch запросы рекурсионно (или, возможно, через цикл)?

Суть в том, что я должен получить массив, в котором будет 10 разных объектов.
Есть API - при запросе возвращает объект, в нем есть поле previousURL, если сделать fetch запрос к previousURL, снова вернется объект, но уже с вчерашними данными и с previousURL, которое будет на данные позавчерашние, и так далее до бесконечности. Мне нужно получить данные за последние 10 дней, но не писать же вручную 10 fetch-запросов. Надеюсь, понятно объяснил, если что - уточню
  • Вопрос задан
  • 84 просмотра
Решения вопроса 1
Судя по описанию, обычного цикла должно хватить

// Массив для получаемых объектов
const result = [];
// Переменная для следующего URL (изначально содержит первый адрес)
let previousURL = "http://site.com/";


// Цикл
for (let i = 0; i < 10; i++) {
  // Получение данных
  const response = await fetch(previousURL);
  const data = await response.json();

  // Добавление полученных данных в общий массив
  result.push(data);

  // Обновление переменной со следующим URL
  previousURL = data.previousURL;
}

// Демонстрация получивлегося массива
console.log( result )
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы