axios封装

150 阅读1分钟

多个不同地址api适用:juejin.cn/post/684490… 单独地址适用:juejin.cn/post/684490…

完整的:有判断取消请求等 juejin.cn/post/696863…

  • get请求避免缓存

浏览器会对url链接相同的GET请求进行缓存,这会导致某些请求拿不到最新的数据。在GET请求里加上时间戳来解决这个问题。这里的示例代码除了字典请求之外的其他请求都加上了时间戳,根据项目实际情况可进行修改。

service.interceptors.request.use(config => {
  if(config.method=='get'){
    if(config.url.indexOf("sys/dict/getDictItems")<0){
      config.params = {
        _t: Date.parse(new Date())/1000,
        ...config.params
      }
    }
  }
  return config
},(error) => {
  return Promise.reject(error)
})