// 前端要传给后端的参数
let params = {
info: [{
name: 'Jack',
age: 11,
file: '文件类型'
},
{
name: 'Make',
age: 15,
file: '文件类型'
},
]
}
// 前端处理
let formdata = new FormData()
for (let d in params) {
let v = params[d]
if (Object.prototype.toString.call(v) === '[object Array]') {
v.forEach((item, i) => {
if (typeof item == 'object') {
for (let k in item) {
formdata.append(`d[${i}].${k}`, item[k])
}
} else {
formdata.append(`d[${i}]`, item)
}
})
} else {
formdata.append(d, v)
}
}
// 记得 content-type: multipart/form-data
// 处理完结构如下
/*
info[0].name : Jack,
info[0].age : 11,
info[0].file : (binary)
info[1].name : Make,
info[1].age : 15,
info[1].file : (binary)
*/
后端参照