1. 程式人生 > >vue的axios訪問後臺獲取不了引數和中文亂碼設定

vue的axios訪問後臺獲取不了引數和中文亂碼設定

/**
 * 獲取所有路口資料
 */
function A() {
    return axios.post(contextPath+"/book/getList");
}
//獲取協調路徑中每個訊號機的特徵引數
function B(acsIdList) {
    return axios.post(contextPath+"/user/getUserById",{
        id: id
    });
}
axios.all([A(),B()])
    .then(axios.spread(function(data1,data2){
        if(!(data1.status==200&&data2.status==200)) return;
        data1 =data1.data;
        data2 =data2.data;
       //TODO
    }))
    .catch(function (error) {
        console.log(error);
    });

如果後臺得不到引數或者資料中文亂碼,那麼新增一下設定:

/**
 * Created by huangshengtao on 2018-8-21.
 */
axios.defaults.headers = {
    "Content-Type": "application/x-www-form-urlencoded;charset=UTF-8"
}
axios.defaults.transformRequest = [function (data) {
    var newData = "";
    for (var k in data) {
        newData += encodeURIComponent(k) + '=' + encodeURIComponent(data[k]) + '&'
    }
    return newData
}]