如何设置postman的raw中的json格式

后台controller的封装格式如下:

@RequestMapping(value = "/getUserInfo", method = { RequestMethod.POST, RequestMethod.GET }, name="getUserInfo")
    public String getUserInfo(@RequestBody User user, List<String> list, int[] num, String str) {
        System.out.println(user.getName());
        System.out.println(user.getPassword());
        return "success";
    }

现在希望使用raw, application/json的方式请求,在postman中,该如何写raw中该如何书写json字符串。

如果控制器只有一个参数

getUserInfo(@RequestBody User user)

json格式如下:

{
    "name" : "123",
    "password" : "qqq"
}

这样请求是没有问题的。但是如果多个参数,该如何封装?

阅读 20.1k
2 个回答

可以考虑下创建一个DTO对象,把多个参数(可能是对象)封装进去,希望能对你有所帮助
对象:

public class ExampleDTO {
    private User user;
    private Admin admin;
}

json格式:(属性与DTO一致,此处只是举例)

{
    "user":{
        "name":"123",
        "password":"qqq"
    },
    "admin":{
        "name":"456",
        "password":"www"
    }
}

请求:

getUserInfo(@RequestBody ExampleDTO exampleDTO )

多余的参数可以通过path或param两种方式传递过去。

@RequestMapping(value = "/getUserInfo", method = { RequestMethod.POST, RequestMethod.GET }, name="getUserInfo")
public String getUserInfo(@RequestBody User user, @RequestParam(value="list") List<String> list, @RequestParam(value="num") int[] num, @RequestParam(value="str") String str) {
    System.out.println(user.getName());
    System.out.println(user.getPassword());
    return "success";
}
    

getUserInfo?list=a&list=b&num=1&num=2&str=xx
同时还可以通过body传json

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题