From b6aced5bad4fd78310b0b0dbf58c1fffd0e7dd0e Mon Sep 17 00:00:00 2001 From: Mihajlo Medjedovic Date: Wed, 5 Aug 2020 20:58:10 +0200 Subject: [PATCH] fix: makeRequest retry --- src/utils/makeRequest.ts | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/utils/makeRequest.ts b/src/utils/makeRequest.ts index c27ec4d..5bf8869 100644 --- a/src/utils/makeRequest.ts +++ b/src/utils/makeRequest.ts @@ -40,10 +40,25 @@ export async function makeRequest( } } else { const body = await response.text(); + + if (needsRetry(body)) { + if (retryCount < retryLimit) { + retryCount++; + let retryResponse = await makeRequest(url, retryRequest || request, callback, contentType); + retryCount = 0; + + return retryResponse; + } else { + retryCount = 0; + + throw new Error('Request retry limit exceeded'); + } + } + return Promise.reject({ status: response.status, body }); } } else { - const responseTransformed = responseTransform(response); + const responseTransformed = await responseTransform(response); let responseText = ''; if (typeof responseTransformed === 'string') {