调用 axios
import axios from 'axios'
自定义设置配置的默认值
var instance1 = axios.create({
baseURL: 'http://localhost:9999/api1', //配置固定接口地址
changeOrigin:true,//允许跨域请求
timeout: 1000 //设置超时时间(s)
});
拦截器 使用
// 添加请求拦截器
axios.interceptors.request.use(function (config) {
// 在发送请求之前做些什么
//列验证 token 是否存在,不存在跳转登陆页面
//存在通过报头传给接口
const token = getCookie('名称'); //注意使用的时候需要引入cookie方法,推荐js-cookie
config.data = JSON.stringify(config.data); //传参数
config.headers = {
'Content-Type':'application/x-www-form-urlencoded'
}
if(token){
config.params = {'token':token} //传token
}
return config;
}, function (error) {
// 对请求错误做些什么
return Promise.reject(error);
});
// 添加响应拦截器
axios.interceptors.response.use(function (response) {
// 对响应数据做点什么
//接口返回过来的数据进行处理
//例如处理状态码提示
return response;
}, function (error) {
// 对响应错误做点什么
return Promise.reject(error);
});
给vue
Vue.prototype.$https=instance1 ;
//使用这个实例
this.$https({
method: 'post',
url: 'user',
data: {
userId: "001"
}
}).then(res => {
//返会参数
console.log(res);
}).catch(err => {
//报错信息
console.log(err);
})