使用Postman到Spring REST API在POST方法中发送嵌套的json对象

时间:2017-09-05 18:02:29

标签: java json spring rest postman

我正在尝试将POST请求中的嵌套json对象发送到我的Spring REST API。

对象java代码

public class TestModel {
private String id;
private String name;

public TestModel(String id, String name) {
    this.id = id;
    this.name = name;
}

public String getId() {
    return id;
}

public String getName() {
    return name;
}

}

在休息控制器中发布方法代码

@RequestMapping(value = "/helloPost")
public ResponseEntity<TestModel> helloPost(@RequestBody TestModel t) {
    return new ResponseEntity<TestModel>(t, HttpStatus.OK);
}

我的邮差截图

enter image description here

它必须返回状态200 ok和对象i发送,但它永久返回400错误请求。 请告诉我,我做错了什么。当我发送一个字符串(我的@RequestBody也是字符串)但完全没有使用自定义对象时,这没关系。

P.S 我添加了逗号,没有更改

3 个答案:

答案 0 :(得分:2)

你错过了JSON中id字段之后的“,”。适当的JSON就是你的情况: -

{
"id" : "1",
"name" : "test"
}

答案 1 :(得分:2)

您发送到服务器的格式错误的json。您需要在json中添加逗号以分隔元素。

即使邮差在左边显示错误的图标。

{
"id" : 1,
"name" : "test"
}

此外,您还需要在对象模型中添加setter和默认构造函数来设置这些值。

答案 2 :(得分:1)

如评论中所述,请为TestModel类添加默认构造函数。它应该解决问题。

作为附加步骤,如果Web服务将接受json作为输入,则添加使用内容类型作为应用程序json的使用注释。