У меня проблема с моим приложением. Я загружаю файл на Angular 5, но не могу передать его в свой Java Spring Back end, чтобы вставить его в базу данных.
Я получаю сообщение об ошибке 500 при попытке отправить frmData
на контроллер Java.
У кого-нибудь есть решение? Вот мой код:
мой компонент .html:
<ng-container>
<input type="file" id="uploadFile" multiple
(change)="getFileDetails($event.target.file)">
</ng-container></div>
мой компонент .ts:
getFileDetails (e) {
//console.log (e.target.files);
for (var i = 0; i < e.target.files.length; i++) {
this.myFiles.push(e.target.files[i]);
}
}
addFollowUp1() {
const frmData = new FormData();
for (var i = 0; i < this.myFiles.length; i++) {
frmData.append("file", this.myFiles[i]);
}
this.followUpService.addFollowUpAttachment(frmData).subscribe();
}
И мой Service.ts:
public addFollowUpAttachment(file: FormData): Observable<any> {
return this.http.post('/SV-AUD/api/attachment/addAttachment', file );
}
На сервере Java здесь находится контроллер:
@Controller
@RequestMapping("/attachment")
public class AttachmentController {
@Autowired
private AttachmentService attachmentService;
@RequestMapping(value = "/addAttachment", method = RequestMethod.POST)
@ResponseBody
public void addFollowUpAttachment(@RequestParam("file") MultipartFile files) throws ApcException {
System.out.println("test");
attachmentService.addFollowUpAttachment(files);
}
}
Спасибо!