• org.springframework.web.HttpMediaTypeNotSupportedException: Content type 'multipart/form-data;boundary=----WebKitFormBoundaryRAYPKeHKTYSNdzc1;charset=UTF-8' not supported


    原文:https://www.cnblogs.com/yueli/p/7552888.html

     最近同事在做一个图片上传功能、在入参 body 中同时传入文件和其它基本信息结果出现如题异常、在此记录下解决办法、以做记录。

    controller 代码如下:

    复制代码
    1 @RequestMapping(value = "/upload", method =RequestMethod.POST)
    2 @ResponseBody
    3 public String upload(@RequestParam("file") MultipartFile file, @RequestBody User user) {
    4 // 业务处理
    5 ......
    6 ......
    7 
    8 }
    复制代码

    在使用工具测试(Postman、 swagger )时报如下异常

      "timestamp": 1473349676109,
      "status": 415,
      "error": "Unsupported Media Type",
      "exception": "org.springframework.web.HttpMediaTypeNotSupportedException",
      "message": "Content type 'multipart/form-data;boundary=----WebKitFormBoundaryTVc9eDC2a2elulOx;charset=UTF-8' not supported",
      "path": "/upload"

    解决方案:

    去掉 @RequestBody 注解就行了

    复制代码
    1  @RequestMapping(value = "/upload", method =RequestMethod.POST)
    2  @ResponseBody
    3  public String upload(@RequestParam("file") MultipartFile file, User user) {
    4  // 业务处理
    5  ......
    6  ......
    7  
    8  }
    复制代码

    原因: 使用在进行图片或者文件上传时 multipart/form-data 类型时、 数据会自动进行映射不要添加任何注解。此处解释不知道正确不、欢迎指正。

  • 相关阅读:
    [杂说]网络是基础生产工具
    这几天的工作
    [代码]大家来动动脑筋吧
    测试
    [基础] 如何使用extern和static限定符
    元宵节快乐
    复杂的“人"
    C# SMTP发邮件不支持465端口的解决方案,网易企业邮箱
    软件三层架构模型
    ASP.NET MVC 使用二级域名来注册Area区域
  • 原文地址:https://www.cnblogs.com/shihaiming/p/9436341.html
Copyright © 2020-2023  润新知