1.基本的使用
可以看官网: https://github.com/mzabriskie/axios
博客 : https://blog.ygxdxx.com/2017/01/29/Axios-Config/
2.配置
配置中post要将传参是application/x-www-form-urlencoded;charset=UTF-8;然后再参数序列化一下
main.js配置如下
import axios from 'axios';
import qs from 'qs';
axios.defaults.timeout = 10000;
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8';
//POST传参序列化
axios.interceptors.request.use((config) => {
if(config.method === 'post'){
config.data = qs.stringify(config.data);
}
return config;
},(error) =>{
_.toast("错误的传参");
return Promise.reject(error);
});
Vue.prototype.$http=axios; //调用方式比较特别
3.应用
export default {
//本网站的 post公共函数
post($http,url,data){
console.log(url);
return $http({
method:'post',
url:url,
data:data
// headers:{
// "X-Requested-with":"XMLHttpRequest",
// "Content-Type":"application/json;charset=UTF-8"
// }
});
},
//本网站的get通用函数
get($http,url,data){
console.log(url);
return $http({
method:'get',
url:url,
params:data
});
}
}
调用
//post方法
util.post(this.$http,urls.base_dev+urls.admin_login,{
'account':this.$data.name,
'password':this.$data.pwd
}).then(function (res) {
console.log(res);
});
//get方法
util.get(this.$http,urls.base_dev+urls.admin_list,{
'token':'1bf85354e4c1dae3cdd6190bda1b4a69'
}).then(function (res) {
console.log(res);
});