封装axios
1.先在页面引入axios
import axios from 'axios'
2.创建一个axios的实例
const instance = axios.create({
baseURL:'',//请求的公共地址
timeout: 10000 // 请求超时时间,当请求时间超过10秒还未取得结果时 提示用户请求超时
})
3.设置axios的请求拦截器
//请求拦截
instance.interceptors.request.use(config=>{
//config 请求的信息,在这里对请求的信息进行处理,然后返回config,如果不返回,请求不会执行
return config;
},err=>{
//请求发生错误时的处理
Promise.reject(err)
})
//响应拦截
instance.interceptors.response.use(res=>{
//一般在这里处理请求成功后的错误状态码
//登录过期等等
//res是响应的数据
return Promise.resolve(res)
})
将该axios实例导出
export default instance
页面导入axios实例
//@/utils/request是axios实例导出的页面的路径
import request from '@/utils/request'
使用封装的axios实例
import request from '@/utils/request'
//导出方法
export function basicAdd(data) {
return request({
url: '接口',
//请求类型
method: 'post',
//参数
data: data
})
}
引入方法
import { basicAdd } from '该方法的地址'