内容类型'text/plain;charset = UTF-8'在RestController类中的spring boot中不支持错误

新手上路,请多包涵

我在 Spring Boot 应用程序中得到了以下 @RestController :

 @Data
@RestController
public class Hello {

    @Autowired
    private ResturantExpensesRepo repo;

    @RequestMapping(value = "/expenses/restaurants",method = RequestMethod.POST,consumes =MediaType.APPLICATION_JSON_VALUE ,
            headers = MediaType.APPLICATION_JSON_VALUE)
    @ResponseBody
    public void hello(@RequestBody ResturantExpenseDto dto)
    {
        Logger logger = LoggerFactory.getLogger("a");
        logger.info("got a request");

        ResturantExpenseEntity resturantExpenseEntity = new ResturantExpenseEntity();
        resturantExpenseEntity.setDate(new Date(System.currentTimeMillis()));
        resturantExpenseEntity.setName(dto.getName());
        resturantExpenseEntity.setExpense(dto.getExpense());
        repo.save(resturantExpenseEntity);
    }
}

当我尝试从 restClient/RestedClient(mozila 的两个插件)发送请求时,我收到以下错误:

{ “timestamp”: 1512129442019, “status”: 415, “error”: “Unsupported Media Type”, “message”: “Content type ‘text/plain;charset=UTF-8’ not supported”, “path”: “ /费用/餐厅”}

这个错误表明端点不支持Json内容,但我确实放了

消耗 =MediaType.APPLICATION_JSON_VALUE

@RequestMapping 注解内

我错过了什么?

原文由 nadavgam 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.4k
1 个回答

回复迟了,但我在发布答案时遇到了同样的问题,它可能对某人有用,所以我安装了 Postman,然后将您的 Content-Type 更改为 application/json

原文由 Tarek 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题