Перейти к содержимому
18 / 27

Как реализовать таймаут для fetch-запроса?

Есть три способа реализовать таймаут для fetch. Первый (современный): AbortSignal.timeout(ms) -- встроенный статический метод, создаёт signal, который автоматически abort'ит запрос через указанное время. Второй: ручной AbortController + setTimeout -- для случаев, когда нужно отличать таймаут от пользовательской отмены. Третий: Promise.race -- устаревший подход, который не отменяет запрос, а только игнорирует результат. Рекомендуется AbortSignal.timeout() как самый чистый вариант.

Как реализовать таймаут для fetch-запроса? | JScriptiser