因为请求头需要不少东西,不想每次都写一次header,所以封装起来
//引入axios和qs
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
<script src="https://cdn.bootcss.com/qs/6.5.2/qs.min.js"></script>
//新建一个request.js
let tmap = new Date().getTime();
let header = appid + language + tmap.toString()+'H5'+tmap+ token;
(function (win) {
var Request = axios.create({
timeout: 10000,
baseURL: 'http://xxxxxx',
headers:{
'Content-Type':'application/x-www-form-urlencoded',
appid: appid,
lang:language,
nonce:tmap.toString(),
source:'H5',
timestamp:tmap,
token: token,
sign:md5(header)
},
});
Request.interceptors.request.use((config) => {
if (config.method === 'post') {
config.data = Qs.stringify(config.data);
}
return config;
});
Request.interceptors.response.use((response) => {
return response.data;
}, (err) => {
console.log(err);
return err;
});
win.$axios = Request
})(window);
调用
$axios.get("/v1/cloud", {params: data}).then(function (res) {
if(res.code == 0){
}
});
$axios.post("/v1/cloud",data).then(function (res) {
if(res.code==0){
}
});