使用 REST 访问 JPA 数据失败 未找到合适的 HttpMessageConverter

2022-09-04 06:53:03

我已经为此斗争了一段时间,找不到解决方案。我正在运行SpringBoot指南,并且使用REST访问JPA数据(http://spring.io/guides/gs/accessing-data-rest/)不起作用。

只需下载并运行它就可以运行,允许GET调用

http://localhost:8080/people 

使用邮差。但是,每当我尝试PUT或POST时,我都会收到以下错误

{
 "cause": null,
 "message": "No suitable HttpMessageConverter found to read request body into object of type           class hello.Person from request with content type of text/plain;charset=UTF-8!"
}

我通过PUT传递的json是

{
"firstName": "Dave",
"lastName": "Something"
}

这只是运行没有更改的vanilla项目。许多其他指南项目工作正常,所以我知道MVN,Spring Boot等工作正常。

尝试了很多论坛,但没有任何建议的作品。

任何帮助将不胜感激。

谢谢戴夫


答案 1

您的 POST 请求具有内容类型,并且服务器不知道如何将纯文本转换为实例。text/plainhello.Person

您需要通过将请求的标头设置为Content-Typeapplication/json


答案 2

我使用了谷歌浏览器的Postman扩展程序,并发送了原始JSON。这奏效了。{ "firstName": "Frodo", "lastName": "Baggins" }

请记住指定 HTTP 标头 。Content-Type: application/json