答案
2019-09-09 13:31
采纳率: 100%
浏览 3.8k
已采纳

@RequestBody 实体类接收不到数据,但是用com.alibaba.fastjson.JSONObject可以

@RequestMapping(value = "/getTest", method = {RequestMethod.POST})
    public @ResponseBody
    CommonResponse getTest(@RequestBody TestForm form {

后台这样写,使用postman测试

请求会直接报400,

<!doctype html>
<html lang="en">

<head>
    <title>HTTP Status 400 – Bad Request</title>
    <style type="text/css">
        h1 {
            font-family: Tahoma, Arial, sans-serif;
            color: white;
            background-color: #525D76;
            font-size: 22px;
        }

        h2 {
            font-family: Tahoma, Arial, sans-serif;
            color: white;
            background-color: #525D76;
            font-size: 16px;
        }

        h3 {
            font-family: Tahoma, Arial, sans-serif;
            color: white;
            background-color: #525D76;
            font-size: 14px;
        }

        body {
            font-family: Tahoma, Arial, sans-serif;
            color: black;
            background-color: white;
        }

        b {
            font-family: Tahoma, Arial, sans-serif;
            color: white;
            background-color: #525D76;
        }

        p {
            font-family: Tahoma, Arial, sans-serif;
            background: white;
            color: black;
            font-size: 12px;
        }

        a {
            color: black;
        }

        a.name {
            color: black;
        }

        .line {
            height: 1px;
            background-color: #525D76;
            border: none;
        }
    </style>
</head>

<body>
    <h1>HTTP Status 400 – Bad Request</h1>
    <hr class="line" />
    <p><b>Type</b> Status Report</p>
    <p><b>Description</b> The server cannot or will not process the request due to something that is perceived to be a
        client error (e.g., malformed request syntax, invalid request message framing, or deceptive request routing).
    </p>
    <hr class="line" />
    <h3>Apache Tomcat/8.5.42</h3>
</body>

</html>

如果后台改为

public CommonResponse getTest(@RequestBody JSONObject jsonObject) {

用JSONObject接收则没有问题,请各位大佬告知原因

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

2条回答 默认 最新

  • 真-酸辣土豆丝 2019-09-09 17:20
    最佳回答

    你的前端参数后后边接受对象的参数名字有没有对应上

    评论
    解决 无用
    打赏 举报
查看更多回答(1条)

相关推荐 更多相似问题