前言
在我们的业务请求中,有很多时候会针对有不同时长的需求策略性设置。这里针对这个需求进行详细的展开。
针对这种情况,我们的timout的一般是根据请求地址来的,所以核心处理技巧便是如何根据不同的request地址去设置不同的timeout.
我们之前设置的请求时长是十秒,并且是通过create的部分,整个项目只有一个instance的。
let _axios = axios.create({
baseURL: apiProxyUrl,
headers: { 'Content-Type': 'application/json' },
transformRequest: [transformRequest],
timeout: 10000
})
那么既然需要处理request的地址部分,我建议针对长时长的地址单独一个文件维护,考虑到了以下两点:
1 请求地址变多时,可以更好的定位以及维护
2 需要时,可以针对不同的微服务进行进一步的管理和配置
3 与下面请求时长的策略部分进行解耦
主要结果是返回一个期望长时长地址的数组。
/**
* @author robin
* @description maintain all long time api request paths
*/
/**
* 用户服务长时长地址数组
*/
const userApiPaths = []
/**
* 报表服务长时长地址数组,如果你的微服务地址符合一个规律,可以这里进行方法定义并返回
*/
const getTablesApiPaths = ()=>{
return []
}
export default [
'/house/list/houseSpaceI