我的方案如下:
前端代码
let descArray = [];
for(let i = 0; i < multiFileTable.value.length; i++){
multiFormData.append('coverlist', multiFileTable.value[i].cover); //文件数组
multiFormData.append("filelist", multiFileTable.value[i].upFile);
descArray.push(multiFileTable.value[i].desc); //对象数组
}
let descJson = JSON.stringify(descArray); //对象数组转换为JSON
let descBob = new Blob([descJson], { //对象数组转换为Blob
type: 'application/json',
});
multiFormData.append('createRecivelist', descBob); //对象数添加到表单
multiFormData.append("indexcover", oriCover.value);
let kisindexJson = JSON.stringify(formLabelAlign);
let kisindexBlob = new Blob([kisindexJson],{
type: 'application/json',
});
multiFormData.append("kssindex_noid", kisindexBlob);
let config = {
headers: {'Content-Type': 'multipart/form-data'}
}
await axios.post("/root/ksscreateall", multiFormData, config)
后端代码
public JsonResult<Object> rootksscreateall(@RequestPart("filelist") List<MultipartFile> filelist,
@RequestPart("coverlist") List<MultipartFile> coverlist,
@RequestPart("createRecivelist") List<CreateRecive> createRecivelist,
@RequestPart Kssindex kssindex_noid,
@RequestPart("indexcover") MultipartFile indexcover) throws Exception {