1、新建 httpRequest.js 文件,定义如下方法:
//axios封装post请求
function axiosPostRequst(url,data) {
let result = axios({
method: 'post',
url: url,
data: data,
transformRequest:[function(data){
let ret = '';
for(let i in data){
ret += encodeURIComponent(i)+'='+encodeURIComponent(data[i])+"&";
}
return ret;
}],
header:{
'Content-Type':'application/x-www-form-urlencoded'
}
}).then(resp=> {
return resp.data;
}).catch(error=>{
return "exception="+error;
});
return result;
}
//get请求
function axiosGetRequst(url) {
var result = axios({
method: 'get',
url: url
}).then(function (resp) {
return resp.data;
}).catch(function (error) {
return "exception=" + error;
});
return result;
}
2、在html中引入vue.js、axios.js、httpRequest.js
<!--根据自己路径引入-->
<script src="js/vue.min.js"></script>
<script src="js/axios-0.19.js"></script>
<script src="js/httpRequest.js"></script>
3、在js文件中使用封装好的方法
var datas = {
flag:'pass',
comment:'通过'
};
axiosPostRequst('http://localhost:10001/account/approve',datas).then(result=>{
consloe.log(result);
});
ok,大功告成,这样就不用每次请求时写一大串请求头、请求体了。
网上回答的答案,我之前也想过这个问题