Сетевые ошибки случаются постоянно. Простое решение на 15 строк:
— Автоматический retry при временных ошибках
— Экспоненциальная задержка (1s → 2s → 4s)
— Не retry'ит клиентские ошибки (400, 401, 403, 404)
— Retry только для: 408, 429, 500, 502, 503, 504
Пример использования:
try {
const res = await fetchWithRetry('/api/data');
const data = await res.json();
console.log(data);
} catch (err) {
console.error('Все попытки неудачны:', err);
}
⚠️ fetch НЕ отклоняет промис на HTTP ошибках — нужна проверка
response.ok— GET/PUT/DELETE запросы
— Загрузка конфигурации
— Webhook'и
— POST без идемпотентности
— Операции с оплатой
#hotfix
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤2🥰2