함수: asyncRetry()
function asyncRetry<TFn>(fn, initialOptions): (...args) => Promise<Awaited<ReturnType<TFn>> | undefined>;
정의 위치: async-retryer.ts:667
비동기 함수의 재시도 활성화 버전을 생성합니다. execute 메서드를 반환하는 AsyncRetryer 클래스의 편의 래퍼입니다.
타입 매개변수
TFn
TFn extends AnyAsyncFunction
매개변수
fn
TFn
재시도 기능을 추가할 비동기 함수입니다.
initialOptions
AsyncRetryerOptions<TFn> = {}
재시도 동작의 설정 옵션입니다.
반환값
원본 함수를 재시도 로직과 함께 실행하는 새 함수입니다.
(...args): Promise<Awaited<ReturnType<TFn>> | undefined>;
매개변수
args
...Parameters<TFn>
반환값
Promise<Awaited<ReturnType<TFn>> | undefined>
예시
// Define your async function normally
async function fetchData(url: string) {
const response = await fetch(url)
if (!response.ok) throw new Error('Request failed')
return response.json()
}
// Create retry-enabled function
const fetchWithRetry = asyncRetry(fetchData, {
maxAttempts: 3,
backoff: 'exponential',
baseWait: 1000,
jitter: 0.1
})
// Call it multiple times
const data1 = await fetchWithRetry('/api/data1')
const data2 = await fetchWithRetry('/api/data2')