У меня есть сервер Дев, который вращается угловую 2 на локальном хосте: 4200, и кот с весны на локальном хосте: 8080. Я пытаюсь загрузить файл на сервер в следующем порядке:Загрузка файла с помощью Spring
углового код:
uploadAvatar(file:File){
let xhr = new XMLHttpRequest()
xhr.open("POST",`http://localhost:8080/api/upload/avatar`)
xhr.setRequestHeader("Content-Type","multipart/form-data")
xhr.send(file)
}
контроллер код Пружина:
@RequestMapping(value = "/api/upload/avatar", method = RequestMethod.POST)
public String uploadFile(MultipartFile file){
log.info(file);
return file.getName();
}
Но после попытки загрузки файла ошибка появляется в Java-консоли:
org.springframework.web.multipart.MultipartException: Could not parse multipart servlet request;
nested exception is java.io.IOException: org.apache.tomcat.util.http.fileupload.FileUploadException: the request was rejected because no multipart boundary was found
Как исправить эту ошибку?
Спасибо.
UPDATE 1
"продублировать" используется с Spring MVC + JSP, я пытаюсь загрузить файл с помощью Ajax. И версия решения мне не помогает.
UPDATE 2
Spring Boot(v1.4.3.RELEASE)
Я использую конфигурацию Java, если вы хотите, я приведу пример полной конфигурации.
Возможный дубликат [SPRING REST: Запрос был отклонен, потому что не было найдено многочастной границы] (http://stackoverflow.com/questions/17462642/spring-rest-the-request-was-rejected-because-no-multipart-boundary-was-found) –
Возможный дубликат [Как загрузить многостраничную форму в AngularJS?] (Http://stackoverflow.com/questions/26162132/how-do-i-upload-a-multipart-form-in-angularjs). Как правило, вам необходимо закодировать ваш запрос как многостраничную заявку. В частности [этот ответ] (http://stackoverflow.com/a/26162908/6768037) в приведенном выше разделе может помочь. –
Какую версию загрузки весны вы используете и определили ли вы свою собственную конфигурацию webapp? – rajadilipkolli