[SPRING] SPRING REST : 다중 부분 경계가 발견되지 않아 요청이 거부되었습니다.
SPRINGSPRING REST : 다중 부분 경계가 발견되지 않아 요청이 거부되었습니다.
나는 봄 3 나머지 멀티 파트 파일 업로드를위한 POC를했다. 잘 작동합니다. 하지만 내 응용 프로그램과 통합 할 때 문제가 발생했습니다.
다음 예외를 throw합니다.
org.springframework.web.multipart.MultipartException: Could not parse multipart servlet request;
nested exception is org.apache.commons.fileupload.FileUploadException:
the request was rejected because no multipart boundary was found**"
제 코드가 잘못되었을 때 알려주십시오.
콩:
<bean class="org.springframework.web.servlet.view.ContentNegotiatingViewResolver">
<property name="order" value="1" />
<property name="mediaTypes">
<map>
<entry key="json" value="application/json" />
<entry key="xml" value="application/xml" />
<entry key="file" value="multipart/mixed" />
</map>
</property>
</bean>
<!-- multipart resolver -->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<!-- one of the properties available; the maximum file size in bytes -->
<property name="maxUploadSize" value="50000000" />
</bean>
제어 장치:
@Controller
public class MultipleFilesRecieve {
@RequestMapping ( value = "/saveMultiple", method = RequestMethod.POST )
public String save( FileUploadForm uploadForm ) {
List<MultipartFile> files = uploadForm.getFiles( );
List<String> fileNames = new ArrayList<String>( );
if ( null != files && files.size( ) > 0 ) {
for ( MultipartFile multipartFile : files ) {
String fileName = multipartFile.getOriginalFilename( );
fileNames.add( fileName );
}
}
return "multifileSuccess";
}
}
해결법
-
==============================
1.문제는 귀하의 코드에 없습니다. 귀하의 요청에 있습니다. 다중 요청에서 경계가 누락되었습니다. 그것이 사양에서 말했듯이 :
문제는 귀하의 코드에 없습니다. 귀하의 요청에 있습니다. 다중 요청에서 경계가 누락되었습니다. 그것이 사양에서 말했듯이 :
이 게시물과이 게시물도 도움이됩니다.
-
==============================
2.@ sermolaev 그의 대답은 바로 있습니다.
@ sermolaev 그의 대답은 바로 있습니다.
이 문제와 관련된 경험을 공유하고 싶습니다. 나는 우편 배달부에서이 문제를 겪었지만 오랫동안 그 근본 원인을 이해할 수 없었다. 내 요청 템플릿이 Postman에 경계가 포함 된 올바른 원인 인 것으로 보입니다 ...
결국 나는 Content-Type = multipart / form 헤더를 직접 지정하면 Postman이 자동으로 추가 한 것을 오버라이드한다는 것을 발견했습니다. 그리고 이것은 당신과 같은 오류로 이어집니다. 내 솔루션은 Content-Type 헤더를 제거하는 것처럼 간단했습니다.
-
==============================
3.보안 필터를 사용하고 있습니까? 내 문제는 보안 필터 체인을 제거하여 해결되었습니다. 이것으로부터:
보안 필터를 사용하고 있습니까? 내 문제는 보안 필터 체인을 제거하여 해결되었습니다. 이것으로부터:
this.mockMvc = MockMvcBuilders.webAppContextSetup(this.wac).addFilters(this.springSecurityFilterChain).build();
이에:
this.mockMvc = MockMvcBuilders.webAppContextSetup(this.wac).build();
나는 세부 사항을 설명하는 문제를 열었다 : https://jira.spring.io/browse/SPR-12114
from https://stackoverflow.com/questions/17462642/spring-rest-the-request-was-rejected-because-no-multipart-boundary-was-found by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] defaultServletHandlerMapping이라는 이름으로 bean을 생성하는 중 오류가 발생했습니다. (0) | 2019.01.05 |
---|---|
[SPRING] Spring Maven 클리닝 오류 - 요청 된 프로필 "pom.xml"이 존재하지 않아 활성화 할 수 없습니다. (0) | 2019.01.05 |
[SPRING] Spring은 모든 빈이 기본 생성자를 필요로 하는가? (0) | 2019.01.05 |
[SPRING] Spring MVC에서 Form없이 Multipart 사용하기 (0) | 2019.01.05 |
[SPRING] Spring 데이터 Solr 다중 코어 및 저장소 (0) | 2019.01.05 |