【发布时间】:2021-01-05 08:40:20
【问题描述】:
在服务器端,我有 spring MVC (JAVA) 项目,它接受带有MultipartFile 的多部分/表单数据
@RequestMapping(value = { "/uploadImg/**" }, method = RequestMethod.POST)
public void uploadImg(Model model, HttpServletRequest request,HttpServletResponse response,MultipartFile file )
{
String originalFileName = file.getOriginalFilename();
//some cases on based on file name and storing the file into the server
}
以前,我使用<fomr> 和<file> 来上传文件。但现在我有一个 base64 格式的图像数据,想使用 AJAX 上传到相同的请求映射。
我遇到了这个Upload base64 image with Ajax 和很多这样的解决方案。但是所有人都只上传文件数据,但在我的情况下,我想上传带有数据和名称的图像,因为在服务器端,一些逻辑是基于文件名编写的。
一个选项可能是,在参数中发送图像数据,在另一个参数中发送文件名,但我无权访问(或者更确切地说,我无法更改)服务器端代码来执行此操作。
那么,如何使用 AJAX 上传 base64 图像数据和文件名?
【问题讨论】:
-
@ahendwh2 不,这无济于事。正如我所说,它将在两个请求参数中发送文件数据和文件名。这将需要更改服务器代码。对吗?
-
我写评论的时间不多。我已经在下面发布了一个完整的答案
标签: javascript jquery ajax