前端代碼:
function uploadFiles() {
var accessoryID = document.getElementById('accessoryID').value;
var param = "msgID=''&accessoryID=" + accessoryID;
var fileData = document.getElementById('uploadFile').files[0];
var formData = new FormData();
formData.enctype = "multipart/form-data";
formData.append('uploadFile', fileData);
console.log(formData.get('uploadFile'));
$.ajax({
url:"<%request.getContextPath();%>/uploadgongGaoAccessory.struts?" + param,//傳輸地址
type: "post",
data: formData,//傳輸資料
processData: false,
contentType: false,
cache: false,
//成功回呼函式
success:function (result) {
},
//失敗回呼函式
error:function (errorObj) {
//errorObj回傳的一個錯誤封裝的js物件
//將錯誤物件列印到瀏覽器控制臺
console.log(errorObj);
//給出友好提示
alert("服務忙。。。");
}
});
}
后端報錯:
org.apache.commons.fileupload.FileUploadBase$InvalidContentTypeException: the request doesn't contain a multipart/form-data or multipart/mixed stream, content type header is false
uj5u.com熱心網友回復:
function import() {var formData = new FormData();
formData.append("file",$('#file')[0].files[0]);
$.ajax({
url:'/api/v1/xxx/xxx',
dataType:'json',
type:'POST',
async: false,
data: formData,
processData : false, // 使資料不做處理
contentType : false, // 不要設定Content-Type請求頭
success: function(data){
}
});
}
控制器
@PostMapping(value = "import",produces = "application/json;charset=UTF-8")
public String import(@RequestParam("file") MultipartFile multipartFile) {
return xxxService.import(multipartFile);
}
望采納
uj5u.com熱心網友回復:
這個是ssh框架 后端決議檔案的時候是public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
{
DiskFileUpload fu = new DiskFileUpload();
fileItems=fu.parseRequest(request);//這一行報錯了 說 the request doesn't contain a multipart/form-data or multipart/mixed stream, content
type header is false
return null;
}
前端ajax設定 contentType: false,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/277914.html
標籤:Web 開發
上一篇:注冊失敗
下一篇:關于父類和子類轉換的問題
