我用一个简单的post和get方法编写了一个非常简单的控制器类。
今天是我第一次使用Postman-我不知道我做错了什么,但每次使用POST映射,我都会得到:
{
"timestamp": "2020-03-29T19:05:49.548+0000",
"status": 400,
"error": "Bad Request",
"message": "Required request body is missing: public int pl.futurecollars.controller.GreetingControler.saveGreeting(pl.futurecollars.controller.Greeting)",
"path": "/greetings"
}
控制器类别:
@RestController
@RequestMapping("/greetings")
public class GreetingControler {
private Map<Integer, Greeting> greetings = new HashMap<>();
private int counter = 0;
@GetMapping
public Collection<Greeting> getGreetings() {
return greetings.values();
}
@PostMapping
public int saveGreeting(@RequestBody Greeting greeting){
greeting.setId(counter);
greetings.put(counter, greeting);
return counter++;
}
@DeleteMapping("/{id}")
public void deleteGreeting(@PathParam("id") int greetingId){
greetings.remove(greetingId);
}
}
我添加了一个< code>@RequestBody,但它仍然说它丢失了。
如何解决这个麻烦?
首先,根据注释中提到的错误验证输入,其中一个字段名以<code>开头相反,它应该位于“
中。您可以在上验证jsonhttps://jsoneditoronline.org/.同时添加邮递员快照,仅供邮递员内部参考-
错误消息对缺少的内容有明确的描述:
缺少所需的请求正文:…
因此,您错过了向请求添加正文。
您的配置应该如下所示:
正文应该正是您的Greting
类的JSON对象。
它应该发布到原始
选项卡。
此外,不要忘记< code>header中适当的内容类型:
有用的链接:
问题内容: 从早期版本升级到Spring Boot 2.0.0时,似乎已从库中删除了@ EnableOAuth2Sso批注。迁移指南和发行说明不清楚使用什么或可能移动到什么地方。 问题答案: 在关于Spring Boot的现有GitHub问题中进行讨论之后,我最终被引导到2.0.0版本中注释的位置。它已移至一个2.0.0发行工件全新的项目。 要解决此问题并迁移项目,请将工件org.springfr
我使用的是最新的Spring Batch Admin(1.3.0.Release),并且在我的WAR工件pom文件中包含了'admin-manager'和'admin-resources'。 我的问题是css和图像资源从来没有正确的链接,所以我的管理主页看起来像这样。关于如何配置上下文以正确地包括这些资源,有什么建议吗?
Spring Boot(1.2.7)web应用程序(响应SSL请求)在Intellij IDEA上运行很好。 构建从命令行运行的JAR工件,启动时抛出错误 null Spring Boot(web)应用程序可以从Intellij IDEA运行,响应https请求,而不需要在application.properties中执行更多的操作。properties: 要从命令行启动JAR工件,我使用: JA
问题内容: 我有Spring Boot应用程序版本1.5.x,该版本使用,试图将其迁移到Spring Boot 2,但是该应用程序无法编译,尽管它具有对的依赖。编译器发出以下错误: 问题答案: 该类已被删除并替换 为更多信息,请检查:Spring-Boot-2.0-Migration-Guide,其中说: 为了支持反应性用例,已对嵌入式容器的包装结构进行了相当广泛的重构。EmbeddedServl
我有一个集成应用程序,大部分工作,但注意到昨天一个消息丢失了。当时,service-activatorendpoint正忙于处理先前的消息。 以下是适用于该问题的配置。
我有Spring Boot应用程序版本1.5.x,它使用,我正试图将它迁移到Spring boot2,但该应用程序没有编译,尽管对有依赖关系。编译器发出以下错误: