我正在尝试通过 Jquery Upload 插件向 Spring Controller 发送附加请求参数。我有如下代码:
$('#fileupload').fileupload({
url : url,
dataType : 'json',
formData: {
'projectName': $('#projectSelect :selected').val()
},
done : function(e, data) {
console.info (data);
//some more logic
}
});
我要做的是发送文件对应的项目名称。我试过这个formData并使用如下控制器:
@RequestMapping(value = "upload", method = RequestMethod.POST, produces = "application/json")
@ResponseStatus(HttpStatus.OK)
@ResponseBody
public List<KnownIssueUiModel> upload(@RequestParam("files[]") MultipartFile file, @RequestParam("projectName") String projectName) throws IOException {
System.out.println("PROJECT NAME: " + projectName);
// some logic
return issues;
}
但是当我使用这样的代码时,我得到“400(必需的字符串参数'projectName'不存在)”。当我尝试将 RequestBody 和 ProjectDto 类与项目名称的 getter 和 setter 以及默认构造函数一起使用时,我得到了 415(不支持的媒体类型)。如果有人可以建议我如何通过文件上传 Isend 到 Spring 这个项目名称,我将不胜感激。