Sobes.tech
Назад к задачам
Junior — Senior
39

Функция HTTP‑запроса с автоматическими повторениями и ограничением по времени

Компании, где спрашивали:

OZONOZON
Получайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Условие задачи

Требуется написать функцию retryFetch, принимающую следующие аргументы:

  • endpoint — URL, к которому будет отправлен HTTP‑запрос;
  • maxRetries — число попыток повторить запрос в случае неудачи;
  • requestTimeout — максимальная продолжительность ожидания ответа для каждой отдельной попытки. Функция должна выполнить запрос fetch к указанному endpoint и, в случае ошибки или превышения таймаута, повторять его, пока не получит успешный ответ или не исчерпает количество попыток maxRetries. При успешном завершении запрос должен вернуть полученные данные, преобразованные в JSON. Если после всех попыток запрос не удался, следует бросить последнюю полученную ошибку.