以前,浏览器与服务器的post通讯是通过表单进行提交的,通过form表单提交的数据,默认便是formData的格式。
jQuery作为旧时代走过来的第三方库,内置了后端通讯的ajax方法,默认将JSON(object)格式的数据,转换为formData数据。
而vue的axios,并没有对此数据格式进行处理;
可以如下转换
代码:
let postData = new FormData()
Object.keys(data).forEach( key => {
postData.append(key, data[key])
})
小程序没有formData对象
let postData={}
Object.keys(data).forEach( key => {
postData[`${key}`] = data[key]
})
另外,若是数组类型的数据对象
如answer[{},{},{}]
则:
answer.forEach( (data, index) => {
Object.keys(data).forEach( key => {
postData[`answer[${index}][${key}]`] = data[key]
})
})
网友评论