Я хочу отправить файл из моего приложения angular 8 на мой весенний загрузочный сервер
Я пробовал весной - MultiPartFile, HttpServletRequest и некоторые другие методы безуспешно.
I надеюсь, кто-нибудь подскажет мне, как получить файл весной ... и, если понадобятся изменения в моем приложении angular.
Angular 8
<input ngModel type="file" name="file" (change)="fileChange($event)" class="form-control-file" id="exampleInputFile" aria-describedby="fileHelp" required>
fileChange(event) {
this.imageMentor = event.target.files[0];
}
при Я отправляю файл - в компоненте
onFormSubmitMentor() {
const dataImage = new FormData();
dataImage.append('myFile', this.imageMentor, this.imageMentor.name);
this.useDetailsService.addMentor(dataImage).subscribe(data => {
}, Error => {
if (Error.error.error === 'Unauthorized') {
alert('Unauthorized');
}
});
}
сервис
addMentor(dataImage) {
const token = JSON.parse(localStorage.getItem('currentUser'));
let headers = new HttpHeaders();
headers = headers.append('Authorization', 'Bearer ' + token.token);
headers = headers.append('Content-type', 'application/json');
console.log(dataImage);
return this.http
.post(
'http://localhost:8080/register/mentor',{file: dataImage}, {headers, responseType: 'text'}
).pipe(map((response: any) => {
console.log(response);
return response;
}), catchError((err: any) => {
console.log(err);
return throwError(err);
}));
}
Spring boot
@RequestMapping(value = "/register/mentor", method = RequestMethod.POST,consumes = "application/json")
@ResponseBody
public ResponseEntity<?> registerMentor(HttpServletRequest request) throws Exception {
// connectionValidation.isAdmin();
StringBuilder builder = new StringBuilder();
try (BufferedReader in = request.getReader()) {
char[] buf = new char[4096];
for (int len; (len = in.read(buf)) > 0; )
builder.append(buf, 0, len);
}
String requestBody = builder.toString();
return saveMentorUser(new Mentor());
// return saveMentorUser(mentor);
}
и я попробовал это
https://medium.com/@udith.indrakantha / закачивать-изображения-и-копи-их-в-database- angular -8-весна-загрузочные mysql -b5144768202b