我们知道axios post方法默认使用application/json格式编码数据,那么解决方案就有两种,一是后台改变接收参数的方法,另一种则是将axios post方法的编码格式修改为application/x-www-form-urlencoded,这样就不需要后台做什么修改了。
首先看一下axios 发送POST时存在的问题:
vue组件中,axios发送post请求的代码如下
this.$axios({
method:"post",
url:"/api/haveUser",
data:{
name:this.name,
password:this.password
}
}).then((res)=>{
console.log(res.data);
})
//或者 axios.post(`${apiUrl.JJQ_URL}${apiUrl.CANCELCOLLECT}`,{venderId:venderId,wareId:wareId})
控制台显示下如下
解决办法:formData传参
请求设置:
formData是客户端主体部分组装数据的一种方式,当我们使用:method='POST'提交一个HTML-Form表单
如上图中黄色部分的content-Type:application/x-www-form-urlencoded
content-Type:multipart/form-data
这