好的,所以我有一个带有几个输入字段和一个文件上传字段的表单。我在捕获文件并将其发送到服务器时遇到问题。我在客户端使用Angular,在服务器上使用SpringBoot。我已经在这里待了两天了,但是没有运气。
这是我的Angular代码:
file.component.ts(我已经省略了其他表单输入的代码)
onFileChange(event) {
const fileList: FileList = event.target.files;
const file: File = fileList[0];
console.log(this.file);
}
private prepareSave(): any {
const input = new FormData();
input.append('issue', this.issueInformation);
input.append('granularity', this.granularityInformation);
input.append('file', this.file);
console.log(this.issueInformation);
console.log(this.granularityInformation);
return input;
}
submitData() {
const formModel = this.prepareSave();
console.log(formModel);
this.submissionService.submit(formModel);
}
}
file.component.html
<div class="form-group">
<input type="file" id="file" (change)="onFileChange($event)" accept=".csv" #csvFile/>
</div>
submission.service.ts
export class SubmissionService {
url = 'http://localhost:8080/uploadFile';
private options = { headers: new HttpHeaders({
'Content-Type': 'application/json', 'enctype': 'multipart/form-data'
}) };
constructor(private http: HttpClient) { }
submit(submitData: any) {
this.http.post<any>(this.url, JSON.stringify(submitData),
this.options).subscribe(r=>{JSON.parse(r)});
}
}
我得到的错误是: