retry-axios
retry-axios copied to clipboard
Question: Network shutdown case
Should request be retried when network disconnected? (No retries. Why?)
// api method:
async api({ url, data, cancelToken }: { url: string; data: any, cancelToken: CancelToken }): Promise<any> {
const result = await this.axiosInstance({
method: 'POST',
url: `/chat/api${url}`,
data,
// mode: 'cors',
cancelToken,
})
// .then((res: any) => res)
.then(
this.universalAxiosResponseHandler(({ data }) => {
// console.log(data)
return data?.ok === true || data?.ok === false // NOTE: API like smartprice
})
)
.catch((err: any) => {
if (axios.isCancel(err)) {
console.log('Request canceled', err.message)
} else {
console.log(err)
}
return { isOk: false, message: err.message || 'No err.message', res: null }
})
// console.log(result) // { isOk: true, res: { ok: true, _originalBody: { username: 'pravosleva', chatId: 432590698 } } }
if (result.isOk && !!result.res) {
return Promise.resolve(result.res)
}
return Promise.reject(this.getErrorMsg(result))
}