привет, у меня проблемы с моим проектом Spring 4, который, когда я пытаюсь прикрепить файл к моему серверу, не проходит через go. Я имею в виду, что VO не содержит / не получает ничего в 6-й строке в моем первом поле кода
вот некоторые из моего кода в контроллере / браузере внизу
на моей консоли браузера, каждый элемент, такой как текст и файл то, что я пытаюсь отправить, показаны и отмечены. но каждый раз, когда я прикрепляю файл к своему контроллеру, VO имеет значение null, но если я не прикреплял какой-либо файл, просто какой-то текст, он отлично работает, вставлять и обновлять, даже удалять, просто он не работает, когда у него есть файл изображения, и я не знаю почему. Я попытался изменить тайм-аут, заголовок контента, потребление, но это не сработало ... возможно, это из-за моих настроек на стороне сервера или что? может быть длина содержимого? или вариант asyn c в ajax? idk .. спасибо, что уделили время, прочитав это
@RequestMapping(value="test/sending",method = RequestMethod.POST, produces = "application/json; charset=utf8")
public @ResponseBody Object photoUpload(NoticeVO noticeVO, HttpServletRequest request) throws Exception {
Map<String,String> rMap = new HashMap<>();
rMap.put("result", "processing");
String filePath = request.getSession().getServletContext().getRealPath("/")+"WEB-INF\\views\\assets\\img";
System.out.println("===================================>"+noticeVO);
Я использую ajax в моем HTML
function updatePhoto(param){
let data = $('#setForm').serializeArray();
for (let i=0;i<data.length;i++){
let mapData = data[i];
if(mapData.name=='title' && (mapData.value==null || mapData.value=='')){
bootbox.alert('title should not be empty');
return;
}
formData.append(mapData.name,mapData.value);
}
if(param!=null){
formData.append('idx',param.idx);
formData.append('fileName',param.fileName);
}
for (let value of formData.values()) {
console.log(value);
}
$.ajax({
url:'/test/sending',
method:'POST',
enctype : 'multipart/form-data',
contentType : false,
processData : false,
timeout: 600000,
data : formData,
cache : false,
success : function(res){
let msg = (res.result !=null && res.result=='done')? 'succeed' : 'try again';
alertView(msg,'setting');
},
error : function(res){
console.log(res);
}
})
}
``