apps-script-utils (Русский) 2.1.1 Help

retry

function retry<T>(fn: (attempt: number) => T, options: RetryOptions = {}): T;

Пауза начинается с delay, после каждой неудачи умножается на multiplier и не превышает maxDelay. shouldRetry решает, стоит ли вообще повторять данную ошибку: превышение лимита обычно стоит, неверный аргумент — никогда.

Функция получает номер попытки, начиная с 1. Если последняя попытка не удалась, её ошибка пробрасывается наружу. Сама пауза выполняется через sleep, который по умолчанию берёт Utilities.sleep, где тот есть, и подменяется в тестах.

Параметры

Параметр

Тип

Описание

fn

(attempt: number) => T

Вызываемая функция. Получает номер попытки.

options (необязательный) = {}

RetryOptions

attempts, delay, multiplier, maxDelay, shouldRetry и sleep.

Возвращает

T — то, что вернула функция на удавшейся попытке.

Исключения

Исключение

Условие

IllegalArgumentException

первый аргумент не функция или значение параметра вне допустимого диапазона.

Примеры

Повтор ненадёжного вызова

const response = retry(() => UrlFetchApp.fetch(url), { attempts: 4, delay: 500, multiplier: 2, shouldRetry: (error) => String(error).includes("429") });

Смотрите также

Исходный код

src/lang/function/retry.ts

23 September 2026

Эта документация сгенерирована нейросетью (Claude) на основе исходного кода библиотеки.