axios 是一个基于 Promise 的 HTTP 客户端,专门为浏览器和 node.js 服务
功能:
- 在浏览器中发送 XMLHttpRequests 请求
- 在 node.js 中发送 http 请求
- 支持 Promise API
- 拦截请求和响应
- 转换请求和响应数据
- 取消请求
- 自动转换 JSON 数据格式
- 客户端支持防范 XSRF 攻击
axios 方法
get 获取数据
post 提交数据给后端 (表单提交,文件上传)
put (更新数据,所有数据都提交给后端)
patch (更新数据,只提交修改部分给后端 (这样可以提高请求性能))
delete 删除数据
//get
axios.get('url',{
params:{
id:id
}
}).then(res=>{})
axios({
method:'get',
url:'url',
params:{
id:id
}
}).then(res=>{})
axios.post(url:url,{id:id}).then(res=>{})
//post
//form-data (图片上传 ,文件上传)
let formData = new FormData();
axios.post(url:url,formData).then(res=>{})
//applicition/json 常用
axios({
method:'post',
url:url,
data:{
id:id
}
}).then(res=>{})
//同时发送多请求
axios.all
axios.spread
fun1(){
return axios.get('url')
}
fun2(){
return axios.get('url')
}
axios.all([fun1(),fun2()]).then(axios.spread((acct, perms)=>{}
))
axios 配置
1全局配置
axios.defaults.baseURL = '';
2实例配置
let instance = axios.create();
instance.defaults.timeout = 1000;
3请求配置
instance.get('url',{
timeout:timeout,
params:{},
})