[英]processing multipart/form-data
我正在使用jsp中的XMLHttpRequest()
進行文件上傳,而當我在控制器中執行request.getContentType()時,我會得到:
multipart/form-data; boundary=---------------------------4664151417711.
此外,我沒有得到如何獲取文件以及如何在控制器中獲取其內容的信息。 請任何人幫助。
更新-我正在我的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) {
};
}
在我的控制器中
public void openSource(@ModelAttribute("domTool") DomTool domTool,HttpServletRequest request,HttpServletResponse response){
String type=request.getContentType();
此外,我對如何獲取上載文件的內容以及控制器中文本字段(即URL)的值感到震驚。 我要作為多部分/表單數據的類型
有一個Apache commons解決方案,稱為commons-fileupload
用於解析多部分內容。 你可以在這里找到它。
從他們的教程中復制的最簡單的示例如下所示:
@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()
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.