通过 ES6 的Proxy
对像, 让 axios 集成 promise-queue-plus, 使 axios
支持 最大并发 及 出错重试 的功能.
未添加任何 API, 你完全可以像使用 axios
那样使用 axios-extra
;
由于使用了Proxy
,请注意兼性.
API
axios.create(config)
现在可以通过设置 maxConcurrent
和 queueOptions
属性, 设置最大并发及重试次数.
const axios = require('axios-extra');
let axios1 = axios.create({
maxConcurrent:1,
queueOptions: {
retry:3,
retryIsJump: true
}
});
let {stop, start, clear} = axios1.requestQueue;
更多 queueOptions
配制可参看这里
axios(config) 及 get|post|request|delete|head|options|put|patch
config
参数可以为某一次的请求设置 queueOptions
;
axios.get('https://www.google.com',{
queueOptions : {
retry: 5
}
});
create(axios,maxConcurrent,queueOptions)
扩展现有 axios
扩展项目中现有 axios
,保证 axios
版本.
const aec = require('axios-extra/create');
const axios = aec(requeir('axios'), 5, { retry: 5 });