vue网络请求工具axios在发送请求的时候使用的是键值对,而不是json格式。


/*封装请求*/
let base = "";/*定义一变量作为前缀如果想给请求加前缀,修改base就好了*/

export const  postKeyValueRequest = (url,params)=>{/*springSecurity登陆的请求默认使用key-value传参,不支持json(可以修改)。。以后的请求用json传参*/
    return axios({
        method: "post",
        url:`${base}${url}`,
        data:params,/*如果只是这样写会以json的形式传,所以定义了下面的转换*/
        transformRequest:[function (data){
            let ret =""
            for (let i in data){
                console.log(i)
                console.log(data[i])
                ret+=encodeURIComponent(i) +"="+ encodeURIComponent(data[i])+ "&" ;
            }
            console.log(ret)
            return ret;
        }],

        headers:{
            'Content-Type' :' application/x-www-form-urlencoded'
        }

    })

}

Logo

前往低代码交流专区

更多推荐