vue.js及项目实战[笔记]— 04 axios
一. axios
1. 基本使用
axios.method('url',[,...data],options)
.then(function(res){ })
.catch(function(err){ })
2. 合并请求
this.$axios.all([请求1,请求2])
.then(this.$axios.spread(function(res1,res2){
})
)
3. 取消请求
- API 3步骤:
const cancelToken = axios.CancelToken;
// 创建标识请求的源对象
const source = CancelToken.source();
// 将对象存储到组件
this.source = source;
// 请求的options属性
cancelToken:source.token,
// 取消到之前的那个请求
this.source.cencel();
// 前端的断点续传,及时当前获取上传的文件大小,存储起来
<input type="file">
.file[0].slice(文件开始部分,文件结尾部分)
new FormData().append("file",file)
// 后台就是接受多次文件,都在此文件上追加
4. 拦截器
- 单请求配置options:
axios.post(url,data,options)
- 全局配置defaults:
this.$axios.defaults
- config:
请求拦截器中的参数
- response.config:
响应拦截器中的参数
- options:
- baseURL基础URL路径
- params查询字符串(对象)
- transformRequest:function(post请求传递的数据) {}转换请求体数据
- transformResponse:function(res) {自己转换响应回来的数据}转换响应体数据
- headers头信息
- data请求体数据
- timeout请求超时,请求多久以后没有响应算超时(毫秒)
5. 跨域请求
参考 :
跨域的另一种解决方案——CORS(Cross-Origin Resource Sharing)跨域资源共享