在我的项目中有一个使用这种方法的假客户端
@PostMapping(path = "/docs/{docId}")
ObjectDto createDocument(@PathVariable("docId") UUID docId, @RequestParam("userId") String userId, MultiValueMap<String, ?> doc);
这在升级到 Spring Boot 3.3.0 之前是有效的
升级后会抛出 400 Bad Request 错误。
我怀疑该请求甚至没有到达其他应用程序,因为无论我做什么,都没有记录任何请求,也没有在接收端抛出 400 错误(尽管正在记录其他请求)。
我尝试将路径更改为“/ds/{docId}”以查看是否会收到 404,但它再次返回 400 错误请求。
调试和打印错误不提供任何更多信息。 我已将 feign.client.config.default.loggerLevel 设置为 FULL,将logging.level.root 设置为 TRACE,但没有运气。
我唯一能弄清楚的是,如果我改变客户端方法和
服务器端点并删除 MultiValueMap
我尝试发送 @RequestPart("file") MultipartFile 文件并添加 Consumers = "multipart/form-data" 以防错误是由 MultiValueMap 引起的,但我仍然遇到相同的错误。
@PostMapping(path = "/docs/{docId}", consumes = MULTIPART_FORM_DATA_VALUE)
ObjectDto createDocument(@PathVariable("docId") UUID docId, @RequestParam("userId") String userId, @RequestPart("file") MultipartFile file);
您有什么想法吗?或者我如何获得有关该请求有什么问题的更多信息?
您能找到解决方案吗? Spring Boot 升级后我遇到了类似的问题。