面试题求解

72 阅读1分钟

以下面示例为例,如果fetch方法返回成功,则整个方法返回成功;如果fetch方法返回失败,则自动按指定间隔和次数重试 当前retriedFunc方法,指定重试次数为3次,间隔为1000ms,即第一次请求失败后,间隔1000ms发起第二次请求,最多重试3次(含首次); 重试中有1次成功,则整个方法进入成功回调;如果一直失败,超过次数则返回失败

function fetch(url) { return axios.get(url); }

let retriedFunc = retry(fetch, 3, 1000);

retriedFunc(url).then().catch();

function retry(func, times, time) { // 待实现 }