[SPRING] 봄 + 각도 동일한 파일을 두 번 업로드 할 수 없습니다.
SPRING봄 + 각도 동일한 파일을 두 번 업로드 할 수 없습니다.
동일한 파일을 두 번 업로드 할 수 없습니다. 다른 파일을 업로드하는 경우
네트워크의 크롬 오류
{ timeStamp: ......, status: 417
error: 'Bad Request',
message: 'Required request part 'file' is not present'
path: 'url as hosted on Tomcat'
}
Spring 부트 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];
}
onSubmit() {
let headers: any = new Headers();
headers.append('Content-type', 'undefined');
let formData = new FormData();
formData.append("file", 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);
)}
}
실수는 어디에서 했습니까?
해결법
-
==============================
1.처음에는 요청이 처리되고 두 번째로 다른 상황이 발생하면 브라우저 캐싱이 발생하는 것처럼 문제가 발생합니다. 이것이 문제의 원인 인 경우 임의의 검색어 매개 변수를 POST URL의 끝에 추가 할 수 있습니다 (예 :
처음에는 요청이 처리되고 두 번째로 다른 상황이 발생하면 브라우저 캐싱이 발생하는 것처럼 문제가 발생합니다. 이것이 문제의 원인 인 경우 임의의 검색어 매개 변수를 POST URL의 끝에 추가 할 수 있습니다 (예 :
var url = 'url as hosted on TOMCAT'; url = url + (new Date()).getTime();
예, 쿼리 매개 변수를 POST 요청에 바인딩하는 것이 이상하게 보일 수 있지만이 작업을 수행하는 데 방해가되는 요소가 없어야합니다. 이상적으로 이것은 브라우저 캐싱을 비활성화하는 데 충분합니다.
from https://stackoverflow.com/questions/54515500/spring-angular-unable-to-upload-same-file-twice by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] 스프링 부트 REST 애플리케이션을 사용하는 OAuth2 - 토큰을 사용하여 리소스에 액세스 할 수 없음 (0) | 2019.02.06 |
---|---|
[SPRING] 스프링 MVC 폼 - 백킹 객체 트리 초기화를위한 베스트 프랙티스 (0) | 2019.02.06 |
[SPRING] Spring MVC를 사용하여 입력 텍스트의 날짜 형식 설정 (0) | 2019.02.06 |
[SPRING] IllegalArgumentException : 형태를 null로 할 수 없다 (0) | 2019.02.06 |
[SPRING] 스프링 빈에서 세션 범위 사용하기 (0) | 2019.02.05 |