前端发送简单json,后端怎么接收?

前端发送简单的 json 后端使用 参数去接收 接收不到?

前端发送方式如下:
http://localhost:8080/user/sendMsg post发送的

请求体:
{
"phone" : "18688866688"
}

后端代码如下:

@RestController
@RequestMapping("/user")
public class UserController {
    @PostMapping("/sendMsg")
    public R sendMsg(String phone){
    log.info("接收到前端发来的请求: {}",phone);
        return null;
    }
}

图片:

img

收不到是没有使用@RequestBody注解。
后端代码使用了一个字符串参数接收前端发送的数据,但前端发送的是 JSON 格式的请求体,需要使用一个 Java 对象来接收。修改代码如下

@RestController
@RequestMapping("/user")
public class UserController {
    @PostMapping("/sendMsg")
    public R<String> sendMsg(@RequestBody Map<String, String> requestBody){
        String phone = requestBody.get("phone");
        log.info("接收到前端发来的请求: {}",phone);
        return null;
    }
}


不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^