gpt4 book ai didi

javascript - 如何使用 FormData 将 javascript 数组与 @RequestParam 绑定(bind)?

转载 作者:行者123 更新时间:2023-11-30 20:53:37 24 4
gpt4 key购买 nike

问题是将 javascript arraylist 与 RequestParam 注释绑定(bind)在一起。如果没有 nokDataList,我有这样的表单数据可以正常工作。nokInfoDatas 是一个 javascript 数组,在控制台中它看起来是: enter image description here

var requestData = JSON.stringify(nokInfoDatas);
console.log("nokInfoDatas");
console.log(nokInfoDatas);
console.log("requestData");
console.log(requestData);
var fd = new FormData();
fd.append('photo', file);
fd.append('testId', testId);
fd.append('nokDataList', nokInfoDatas);
var ajaxData = {
type: "POST",
data: fd,
processData : false,
contentType : false,
url: sendUrl,
headers: headersData,
};

后端:

public @ResponseBody String answer(HttpServletRequest request, 
@RequestParam(value = "photo") MultipartFile photo,
@RequestParam(value = "testId") String testId,
@RequestParam(value = "nokDataList") List<NokDataDTO> nokInfoDtos
)

最佳答案

你可以尝试如下:

创建一个 Blob使用您的 JSON 数据 (requestData) :

var requestData = JSON.stringify(nokInfoDatas);
var fd = new FormData();
fd.append('photo', file);
fd.append('testId', testId);
fd.append('nokDataList', new Blob([requestData], {
type: "application/json"
}));

将@RequestParam 更改为@RequestPart用于解析多部分的 JSON。

public @ResponseBody String answer(HttpServletRequest request, 
@RequestParam(value = "photo") MultipartFile photo,
@RequestParam(value = "testId") String testId,
@RequestPart(value = "nokDataList") List<NokDataDTO> nokInfoDtos
)

关于javascript - 如何使用 FormData 将 javascript 数组与 @RequestParam 绑定(bind)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47901304/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com