Spring webflux通过MultipartFile方式上传文件报错的解决办法,代码示例
代码及示例:
1、以下是错误代码:@PostMapping( consumes = MediaType.MULTIPART_FORM_DATA_VALUE )public Mono<Void> save(@RequestPart("file")MultipartFile file) { log.info("Storing a new file. Recieved by Controller"); this.storageService.store(file);//保存文件的方法,请自己实现 return Mono.empty();}
2、上述代码会报错如下:org.springframework.web.server.UnsupportedMediaTypeStatusException: Response status 415 with reason "Content type 'image/png' not supported"
3、正确的方式是:使用@RequestPart("file") Mono<FilePart> file或者@R髫潋啜缅equestPart("file") Flux<FilePart>替换@RequestPart("file") MultipartFile file如下为正确代码:@PostMapping(consumes = MediaType.MULTIPART_FORM_DATA_VALUE) public Mono<Void> save(@RequestPart("file") Mono<FilePart> file) { log.info("Storing a new file. Recieved by Controller"); this.storageService.store(file); //保存文件的方法,请自己实现 return Mono.empty(); }