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 類型時、 數據會自動進行映射不要添加任何注解。此處解釋不知道正確不、歡迎指正。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM