美文网首页
axios 失败重新请求

axios 失败重新请求

作者: 寒梁沐月 | 来源:发表于2018-10-08 15:29 被阅读230次
    //在main.js设置全局的请求次数,请求的间隙
    axios.defaults.retry = 4;
    axios.defaults.retryDelay = 1000;
    
    axios.interceptors.response.use(undefined, function axiosRetryInterceptor(err) {
        var config = err.config;
        // If config does not exist or the retry option is not set, reject
        if (!config || !config.retry) return Promise.reject(err);
    
        // Set the variable for keeping track of the retry count
        config.__retryCount = config.__retryCount || 0;
    
        // Check if we've maxed out the total number of retries
        if (config.__retryCount >= config.retry) {
            // Reject with the error
            return Promise.reject(err);
        }
    
        // Increase the retry count
        config.__retryCount += 1;
    
        // Create new promise to handle exponential backoff
        var backoff = new Promise(function (resolve) {
            setTimeout(function () {
                resolve();
            }, config.retryDelay || 1);
        });
    
        // Return the promise in which recalls axios to retry the request
        return backoff.then(function () {
            return axios(config);
        });
    });
    

    相关文章

      网友评论

          本文标题:axios 失败重新请求

          本文链接:https://www.haomeiwen.com/subject/mdffhftx.html