首页 > 解决方案 > axios失败的定时重试

问题描述

我在为私人使用而开发的节点模块中使用 axios。在网络故障时,我想以特定的时间间隔重试(如指数退避)。我在我的另一个 react-redux 项目中使用 redux-saga 的延迟完成了此操作。下面是它的片段:

return dealy(500).then(() => axios(error.config))

我想使用普通的 es6 来实现同样的事情,或者如果有任何轻量级延迟库,请建议我。

标签: javascriptecmascript-6promiseaxios

解决方案


我不想仅出于此目的使用第三方库。我创建了一个自定义延迟方法,该方法返回承诺并在某个时间点后解决。这是相同的片段:

const delay = (timeMs) => new Promise((resolve) => setTimeout(() => resolve(), timeMs));

这解决了我的问题。


推荐阅读