//引入 axios
import axios from 'axios';
//引入QS(处理 post请求传递的参数)
import QS from 'qs';
//创建一个axios实例对象
let Serve=axios.create({
//基础路径
baseURL:'url',
//设置请求超时时间 6s
timeout:6000
})
//请求拦截器
Serve.request.use((config)=>{
//请求前处理什么
//判断有没有登录 登录才可以发送请求
// config就是发送请求的配置对象 里面包含url 请求头 等等
return config;
},(error=>{
//请求错误怎么处理
return Promise.reject(error);
}))
//响应拦截器
Serve.interceptors.response.use((response)=>{
//2xx 范围内的状态码都会触发该函数
//对响应数据做点什么
//响应response里面含有后端响应回来的参数 比如处理后端返回来的状态码去判断 是否return 结果
//状态值 200 返回
//状态值 400 500 都是报错处理了
return response;
},(error)=>{
//超出2xx范围的状态码都会触发该接口.
//对响应错误做点什么
return Promise.reject(error);
})
//暴露
export default Serve;
Axios 二次封装
最新推荐文章于 2024-07-24 10:40:52 发布