3
因此,我有一個使用AngularJS製作的表單(不適合該項目,但這是該用戶使用的),它具有標準字段以及「文件」類型輸入。從我讀過的內容來看,聽起來像FormData對象將是保存表單的一種好方法,只是我根本無法完成它。我試着按照方法here沒有成功,我認爲問題是我沒有正確編寫控制器。實際的形式有更多的領域和多個文件,但是這是一個簡單的測試,我一直試圖去工作:將FormData對象傳遞給Spring MVC
HTML:
<form enctype="multipart/form-data" method="post" name="testform">
<input type="file" name="file" required />
<input type="text" name="name"/>
</form>
JS:
function submit() {
var fd = new FormData(document.getElementById("testform"));
$.ajax({
url: saveUrl,
type: "POST",
data: fd,
processData: false, // tell jQuery not to process the data
contentType: false, // tell jQuery not to set contentType
success: function (result) {...}
});
}
我已經嘗試了使用MultipartHttpServletRequest的多種變體控制器,一個對象建模的形式,不同的標題等。沒有什麼真正接近的工作,但有些東西模糊地是這樣的:
@RequestMapping(value = "save", method = RequestMethod.POST, headers = "content-type=multipart/form-data")
@ResponseBody
public String saveShipmentRequest(TestFormData testFormData) {
...
}
如果有人能幫上忙,那就太棒了。我也歡迎這樣的替代方法,我勉強知道角度和是相當新的春天,所以我可能採取錯誤的做法都在一起......