gpt4 book ai didi

java - 处理多部分/表单数据

转载 作者:行者123 更新时间:2023-12-01 15:01:11 26 4
gpt4 key购买 nike

我正在 jsp 中使用 XMLHttpRequest() 进行文件上传,当我在 Controller 中执行 request.getContentType() 时,我得到:

multipart/form-data; boundary=---------------------------4664151417711.

此外,我不知道如何获取该文件并在我的 Controller 中获取它的内容。请任何人帮忙。

更新--我正在我的 jsp 中执行此操作。

 function fileUpload() {
var url= document.getElementById("urlId").value;
var file= document.getElementById("xslId").files[0];
var formdata = new FormData();
formdata.append("url", url);
formdata.append("file", file);
var xhr = new XMLHttpRequest();
xhr.open("POST","http://localhost:8080/XlsUpload/openSource.htm", true);
xhr.send(formdata);
xhr.onload = function(e) {
};
}

在我的 Controller 中--

 public void openSource(@ModelAttribute("domTool") DomTool   domTool,HttpServletRequest     request,HttpServletResponse response){
String type=request.getContentType();

此外,我对如何获取上传文件的内容和文本字段的值(即我的 Controller 中的 URL)感到震惊。我得到的类型为 multipart/form-data

最佳答案

有一个名为 commons-fileupload 的 Apache commons 解决方案,用于解析多部分内容。可以找到here .

从他们的tutorial复制的最简单的例子看起来像这样:

@Override
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
FileItemFactory factory = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(factory);
List items = upload.parseRequest(request);

// iterate over items (i.e. list of FileItem) and access
// the content with getInputStream()
}

关于java - 处理多部分/表单数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13619071/

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