简体   繁体   English

Java Spring:不支持内容类型“multipart/form-data;boundary;charset=UTF-8”

[英]Java Spring: Content type 'multipart/form-data;boundary ;charset=UTF-8' not supported

I have created a controller:我创建了一个控制器:

@RequestMapping(value = "/photo/" , method = RequestMethod.POST)
public @ResponseBody
void addPhotoData(@RequestBody Photo photo, @RequestParam("data")
        MultipartFile photoData) {

    InputStream in = null;
    try {
        in = photoData.getInputStream();
        photoService.save(photo, in);
    } catch (IOException e) {
        e.printStackTrace();
    }
}

and I send the request with Postman:我用邮递员发送请求: 在此处输入图片说明 在此处输入图片说明

I cannot understand why I receive the error 415 not supported.我不明白为什么我会收到不支持的错误 415。 Help!帮助!

Try wrapping the request body into an object.尝试将请求正文包装到一个对象中。

 public class Payload {
   private String name;
   private String url;
   private MultipartFile data;
...
}

Add consumes = { "multipart/form-data" } and添加consumes = { "multipart/form-data" }

@RequestMapping(value = "/photo/" , method = RequestMethod.POST, consumes = { "multipart/form-data" })
public @ResponseBody void addPhotoData(@ModelAttribute Payload payload) {
...

}

There is also MediaType.MULTIPART_FORM_DATA_VALUE constant instead of using that string还有MediaType.MULTIPART_FORM_DATA_VALUE常量而不是使用该字符串

This is called multipart mixed type.这称为多部分混合类型。 Try changing your signature like this尝试像这样更改您的签名

@RequestMapping(value = "/photo/" , method = RequestMethod.POST, consumes = {"multipart/mixed"})
public @ResponseBody void addPhotoData(@RequestPart Photo photo, @RequestPart("data")
        MultipartFile photoData) {

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 不支持 Spring Boot 内容类型 'multipart/form-data;boundary=------------------------#;charset=UTF-8' - Spring Boot Content type 'multipart/form-data;boundary=--------------------------#;charset=UTF-8' not supported 内容类型 'multipart/form-data;boundary=----...;charset=UTF-8' 不支持 - Content type 'multipart/form-data;boundary=----...;charset=UTF-8' not supported UTF-8编码Java / Spring(多部分/表单数据) - UTF-8 encoding Java/Spring (Multipart/form-data) Spring Boot - 不支持内容类型“application/x-www-form-urlencoded;charset=UTF-8” - Spring Boot - Content type 'application/x-www-form-urlencoded;charset=UTF-8' not supported 使用 XML 数据时出错 内容类型 'application/xml;charset=utf-8' not supported spring - Error in consuming XML data Content type 'application/xml;charset=utf-8' not supported spring 当我尝试将 JSON 发送到 Spring 时,不支持内容类型“application/json;charset=UTF-8” - Content type 'application/json;charset=UTF-8' not supported, when i try send JSON to Spring Spring 启动 controller 调用不支持内容类型 'application/json;charset=UTF-8' - Content type 'application/json;charset=UTF-8' not supported with Spring boot controller call Spring Rest 应用程序中的“不支持内容类型‘application/json;charset=UTF-8’” - "Content type 'application/json;charset=UTF-8' not supported" in Spring Rest application spring boot mvc - 不支持内容类型'application / json; charset = UTF-8' - spring boot mvc - Content type 'application/json;charset=UTF-8' not supported HttpMediaTypeNotSupportedException:不支持内容类型 'application/x-www-form-urlencoded;charset=UTF-8' - HttpMediaTypeNotSupportedException: Content type 'application/x-www-form-urlencoded;charset=UTF-8' not supported
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM