Comments (3)
If anyone else ends up here trying to answer this question, here's an implementation based on the suggestion to use interceptors. The example is in TypeScript but it will be the same in JS, just remove the types.
This gets the count of the tries and logs a warning:
interface AxiosRetryRequestConfig extends AxiosRequestConfig {
'axios-retry'?: {
retryCount: number,
lastRequestTime: number
}
}
axios.interceptors.request.use((config: AxiosRequestConfig) => {
const retryRequestData = (<AxiosRetryRequestConfig>config)['axios-retry']
if (retryRequestData) {
const retryCount = retryRequestData.retryCount
logger.warn(`[webhook] Webhook call retry #${retryCount}: ${config.url}`)
}
return config
})
My logger output:
2019-03-21 14:23:00 [info]: [webhook] Sending webhook to http://localhost/webhooks/somewhere
2019-03-21 14:23:02 [warn]: [webhook] Webhook call retry #1: http://localhost/webhooks/somewhere
2019-03-21 14:23:05 [warn]: [webhook] Webhook call retry #2: http://localhost/webhooks/somewhere
2019-03-21 14:23:06 [info]: [webhook] Response from webhook call: 200 OK
from axios-retry.
I'm working on an existing code based that has axios-retry implemented and it is hard to debug. It is difficult to identify if it is retrying. A callback would be helpful.
from axios-retry.
I think you could use a different interceptor to detect retries. You just need to register it after axios-retry and check the retry count. We're trying to keep the API minimal, and this use case can be implemented without adding new options.
from axios-retry.
Related Issues (20)
- retryCondition not called anymore on HTTP 401 starting from axios-retry v3.2.0 HOT 6
- All retries have timeout of 1ms set despite not being set anywhere that way HOT 3
- What is the initial retry delay HOT 5
- Create a Security Policy HOT 1
- Success axios interceptors fired multiple times HOT 7
- [TypeScript]Unable to import names HOT 2
- Inconsistent Behavior of `isNetworkOrIdempotentRequestError` Function HOT 1
- Requiring cjs is broken since the last version (4.0.0)
- TypeError: axiosRetry is not a function in v4.0.0 HOT 11
- Module parse failed: Unexpected token (24:20) HOT 1
- Retry not working on HTTP 502 HOT 3
- How to handle errors HOT 2
- Combining `axios-retry` with other interceptors HOT 1
- [Feature request]onMaxRetryTimesExceeded to allow user to emit a custom error after retries done
- Provide option to trigger retry from successful (200) response in Axios's response interceptors HOT 4
- Do we still need `fixConfig`?
- Attach a unique id with request
- Axios-retry swallows the error response HOT 3
- Exponential delay has unnecessary final sleep HOT 2
- Introduce "axiosRetry.linearDelay"
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from axios-retry.