春季启动+角上传文件无法上传同一文件两次

问题描述 投票:2回答:2

网络环境下的错误铬

{ timeStamp: ......, status: 400
  error: 'Bad Request',
  message: 'Required request part 'file' is not present'
  path: 'url as hosted on Tomcat'
}

春季启动Controller.java文件

@PostMapping("/Post")
public ResponseEntity<String> handleFileUpload(@RequestParam("file") 
MultipartFile file){ String Message=""; try .......(and so on)}

我的角度成分

<form [formGroup]="uploadForm" (ngSubmit) = "onSubmit()">
<input type="file" id="selectFile" formControlName="file1" name="selectFile"
(change)="fileEvent($event)"/>

<input type="submit" name="Submit"/>
</form>

Component.ts文件

fileEvent(e) {
 this.data = e.target.files[0];
}
omSubmit() {
  let headers: any = new Headers();
  headers.append('Content-type', 'undefined');
  let formData = new FormData();
  formData.append("selectFile", this.data);
  const req5 = new HttpRequest('POST', 'url as hosted on TOMCAT', formData,
  reportProgress: true,
  responseType: 'text'
  });
  return this.httpClient.request(req5).subscribe(e => {(
  console.log(e);
  )}
}

我在哪里犯了一个错误?

java angular spring spring-boot
2个回答
4
投票

这个:

formData.append("selectFile", this.data);

于:

formData.append("file", this.data);

原因

public ResponseEntity<String> handleFileUpload(@RequestParam("file") 

1
投票

在您的控制器帕拉姆注释查找一个名为领域的文件。

更改选择文件到文件就能解决问题。

formData.append("file", this.data);

在此参数名称的问题,它必须是在这两个JavaAngular相同

© www.soinside.com 2019 - 2024. All rights reserved.