在 multipart/form-data 中使用 @RequestParam 有什么意义

问题描述

我想在我的帖子请求中上传我的图片和一些布尔标志。我希望这两个值位于正文中,因此我使用了 multipart/form-data 内容类型,并希望执行以下操作:

void uploadNewImage(
            @RequestPart Boolean flag,@RequestPart("file") @NotBlank MultipartFile file) throws IOException {
        ....;
}

但是当我使用 swagger 时,出现异常:"message": "Content type 'application/octet-stream' not supported"

我在谷歌上搜索了一些建议,所有建议都更改了 @RequestPart -> @RequestParam。它确实有效,但在 swagger 发送的请求中,我看到 flag 作为查询参数传递,但不在正文中。

所以我想知道如何在正文中传递 flag

更新 1:

如果我的 flag 无论如何都在正文中,因为它是 POST,为什么人们在这种情况下使用 multipart/form-data,当他们想要上传图像并传输简单的 java 类型(字符串/长) 我可以继续使用上面的简单代码吗?意思一样吗?

void uploadNewImage(
            @RequestParam Boolean flag,@RequestBody byte[] image) {
        ....
    }

当然省略了在一种情况下我使用 MultipartFile 而在另一种情况下 - byte[],但不是这个 - 没有区别,flag 将在查询中传递(再说一次,它也会在这里的身体里吗?)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)