该文件对象将不会被捕获。错误:语法错误:JSON中位于位置0的JSON中的意外令牌r

时间:2019-06-05 12:54:05

标签: angular angular7

好的,所以我有一个带有几个输入字段和一个文件上传字段的表单。我在捕获文件并将其发送到服务器时遇到问题。我在客户端使用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)});
    }
}

我得到的错误是:

image

0 个答案:

没有答案