问题描述:
org.springframework.web.HttpMediaTypeNotSupportedException: Content type 'text/plain;charset=UTF-8' not supported
问题分析:
1、使用PostMan调试后端接口时,请求体里面的content type为text/plain,但是后端接口不支持text/plain,只支持application/json。
解决办法:
(1)swagger-ui.html页面支持application/json,使用swagger-ui.html页面进行传参即可。
Spring Boot配置Swagger步骤请参考以下博客。
Spring Boot 配置Swagger(Api接口文档生成工具)
(2)在PostMan的Headers添加key为Content-Type,value为application/json。
2、接口加了@RequestBody注解,PostMan使用form-data方式传参,导致报错。
解决办法:
(1)去掉@RequestBody注解,PostMan使用form-data方式传参。
(2)保留@RequestBody注解,PostMan使用raw方式传参。
由于调试的接口又要传实体类,又要上传文件,所以采取第二种解决办法。
@PostMapping("/create")
public void create(SysUser user,@RequestParam MultipartFile[] files){
}