我以Accessing Data with MySQL官方Spring教程为起点。
然后,我将addNewUser
方法的@GetMapping
更改为@PostMapping
,并将同一方法的@RequestParam
(标题)参数更改为@RequestBody
参数,例如所以:
public @ResponseBody String addNewUser (@RequestParam String name, @RequestParam String email) {
进入
public @ResponseBody String addNewUser (@RequestBody String name, @RequestBody String email) {
因为我希望这会将每个参数从标头移到请求正文中。
我使用邮递员(Postman)将POST发送到具有JSON(应用程序/ json)和必填字段的相同URL,并且返回错误为"Required request body is missing"
。
我在做什么错了?
答案 0 :(得分:0)
显然,@RequestBody
批注的正确用法是引用包含每个JSON属性的Java POJO,在这种情况下,此User
类包含name
和{{1} }。每个礼节使用email
是不正确的。
我一改变
@RequestBody
进入
public @ResponseBody String addNewUser (@RequestBody String name, @RequestBody String email) { ...
端点按预期工作。