После загрузки любого другого файла после 1-й загрузки я получаю сообщение об ошибке HTTP-417 и сообщение «Файл не загружен», как определено в моем файле Spring UploadController.java.
Spring Boot + Angular загрузка файла с ошибкой 400 неверный запрос
После решения моего вышеуказанного запроса я столкнулся с ошибкой 417, мой вышеуказанный запрос также включает в себя весь набор кодов, включая мой файл контроллера Spring, а также мой компонент Angular.
Короче говоря, в данный момент я могу загрузить только 1 документ каждый раз, когда мне нужно очистить историю просмотров и файлы cookie, чтобы снова успешно загрузить. Вирд понятия не имеет об этом.
@AngeloImmediata - если есть какие-либо проблемы с заголовками, то почему файл загружается один раз. Проблема возникает при загрузке файлов один за другим без очистки кеша
Вот почему я сказал вам изучить запросы и сравнить первый со следующими. Код состояния HTTP 417 заключается в том, что сервер не находит заголовок ожидаемого запроса, поэтому я бы исследовал запросы.
@AngeloImmediata хорошо, я пытался исследовать заголовки в обоих случаях, единственная разница заключается в сообщении заголовков - http URL-адрес ответа об ошибке: 417 Ok
Что ж, попробуйте опубликовать код (как на стороне клиента, так и на стороне сервера), выдающий вам ошибку, чтобы мы могли ее исследовать.
@AngeloImmediata - stackoverflow.com/questions/54462480/… этот запрос содержит весь набор кодов как Spring, так и Angular
Давайте продолжить обсуждение в чате.
Я думаю, вы столкнулись с той же проблемой, которую мы решили, верно?




Вы должны сбросить данные формы, когда пытаетесь загрузить второй файл.
public formdata = new FormData();
onSubmit() {
this.resetform(); //Order matters here
let headers: any = new Headers();
headers.append('Content-type', 'undefined');
formData.append("selectFile", this.formData);
const req5 = new HttpRequest('POST', 'url as hosted on TOMCAT', formData,
reportProgress: true,
responseType: 'text'
});
return this.httpClient.request(req5).subscribe(e => {(
console.info(e);
)}
}
resetform() {
this.formData = new FormData();
}
Я надеюсь, что это решит вашу проблему !!!
я принимаю это как ответ, так как он решил мой запрос, ура!
кажется, что в ваших следующих запросах вы не устанавливаете необходимые заголовки http. Вы должны проверить: 1) какие заголовки ваша серверная служба/контроллер должна получать 2) какие заголовки вы отправляете в своих запросах. Вы также можете сравнить все заголовки в вашем рабочем запросе со всеми заголовками в ваших неработающих запросах, чтобы вы могли понять точку сбоя.