基于Axios实现网络异步交互数据请求

发起请求方法?:

XHR、fetch -- 最大的特性是把XHR的回调形式改为了Promise

在业务上应该找一个库,解决了XHR的回调地狱问题、在业务中希望实现对请求权限拦截、统一响应(403 - -没有权限)拦截、

还可以实现一些通用配置

 axios这个库是使用Promise实现的一个XHR封装、它可以实现请求和响应拦截,同时可以实现通用配置

 主要用点(6个):url(地址),method(请求方式),baseURL(请求地址),timeout(请求时长),params(头部提交token),data(不在get获取请求体)

url:请求地址

method:请求方法

baseURL:所有请求基础地址,使用代理字段,服务器代理

headers:请求头一般放token

timeout:超时配置  --请求需要最大时长

params:参数配置自动拼接到url地址,传参

data:不能用在get请求,它是请求体参数不是get就不写请求

复制代码
//抽取动态数据 url.method,params,data
 
function ajaxFunc(req){
   return new Promise(resolve=>{
    //这里放axios请求返回异步操作的成功方式下面
  
})
}

axios.request({
   url:req.url,
   baseURL:'/apis',
   headers:{token:'test token'},
   timeout:5000,
   params:req.params || {},
   data:req.data || {}
  //}).then(data=>{
   //请求返回一个是response对象,希望得到数据
     //console.log(data.data)

}).then(({data})=>{
    //可以对response对象进行结构赋值
  //直接返回数据
  resolve(data)
}).catch(e=>{
    console.log('-------'请求失败)
})
})
复制代码

 

posted @   cc-front  阅读(181)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
点击右上角即可分享
微信分享提示