【发布时间】:2019-03-14 03:21:30
【问题描述】:
我正在尝试使用 Spring Webflux 上传文件,但收到错误 Required MultipartFile parameter 'file' is not present。
@RestController
@RequestMapping("/documents")
class MyController(val myService: MyService) {
@PostMapping
fun create(@RequestParam("file") file: MultipartFile): Mono<ResponseEntity<Map<String, String>>> {
return myService.create()
}
}
我也尝试将@RequestParam("file") file: MultipartFile 替换为ServerRequeset,但出现错误:
“无法解析公共 reactor.core.publisher.Mono 上类型 'org.springframework.web.reactive.function.server.ServerRequest' 的参数 0>> co.example.controllers.MyController.create(org.springframework .web.reactive.function.server.ServerRequest)"
【问题讨论】:
-
如果是多部分请求,这里应该使用
@RequestPart。另外,你有 Synchronoss NIO Multipart 库作为依赖项吗? -
哦,当我使用
@RequestPart时,处理程序方法现在被击中:) 现在它只是说不支持格式 pdf。我没有在build.gradle中声明明确的 nio 多部分依赖 -
我在哪里添加了@RequestPart?你能发布一个答案吗?
-
@Clement 你是如何解决不支持 pdf 的问题的 :)
-
@GOXR3PLUS 为没有早点这样做的疏忽而道歉。我将在下面发布答案。
标签: spring kotlin spring-webflux