日常开发中与后端联调,可能需要的数据不同,所传值也有所不同
1、如果是data方式,设置请求头为:并且直接返回data就可以 raw
axios.defaults.headers['Content-Type'] = 'application/json;charset=UTF-8';
axios.interceptors.request.use((config) => {
return config;
},(error) =>{
return Promise.reject(error);
});
2、如果是字符串的方式,设置请求头为:并且需要转换 form data
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8';
axios.interceptors.request.use((config) => {
config.data = qs.stringify(config.data); //import qs from 'qs'
return config;
},(error) =>{
return Promise.reject(error);
});
不用qs或者可以试一下这个
let requestData = [];
let _data = '';
for (let key in request.data) {
requestData.push(request.data[key]);
_data += `${key}=${request.data[key]}`;
Object.keys(request.data).pop() !== key && (_data += '&');
}
request.data = _data;
end