问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

Postman POST请求raw参数填写完全指南

创作时间:
作者:
@小白创作中心

Postman POST请求raw参数填写完全指南

引用
CSDN
1.
https://blog.csdn.net/weixin_42474607/article/details/140012149

Postman是开发人员常用的API测试工具,特别是在前后端分离开发模式下,Postman可以帮助开发人员快速测试接口功能。本文将详细介绍Postman中POST请求的raw参数填写方法,包括String、对象、List等数据类型的具体写法。

1. 认识Postman

  • 侧边栏:包括搜索栏,Request请求的历史记录和收藏夹管理。
  • 功能区:Request请求设置,查看Response响应结果和测试结果,可以将请求保存到收藏夹。
  • 设置区:设置和管理环境变量和全局变量。

2. 基础使用步骤

2.1 创建Collection集合

在刚开始一个项目时,为了后续便于组织和管理,把同属该项目的多个API,放在一组里。所以要先去新建一个Collection:New -> Collection

下面两种途径使用哪种都可以

2.2 创建请求

2.3 设置HTTP请求

设置HTTP的Method方法和输入api的地址以及请求参数或请求体

GET是请求方法,请求方法是HTTP请求的必要要素,常见的请求方法有GET和POST两种。

API地址一般为URL地址。如果是请求URL中的入参,会在Params列出参数名称及参数取值,方便我们轻松的修改各入参的值。如有需要,还应该设置HTTP请求Headers部分。

如果是POST请求,需要将请求方法设置为POST,一般说来POST请求是有请求体的,固需要在Body部分中编写正确的请求body内容和Content-Type的值(在Headers中进行设置)

点击send即可发送请求,在response区域可以看到响应结果

3. Postman之raw的各种数据类型写法

目前常用的是post--raw的参数传递方式,那么raw各种数据形式都怎么写呢?

注意:如果后台使用@RequestBody接受参数时适用,@RequestParam时不适用

3.1 String

@PostMapping("name")
public void fdf(@RequestBody String name) {
    System.out.println(name);
}

3.2 对象

3.2.1 对象属性无List属性或属性是另一个对象的情况

@Data
public class User {
    private String name;
    private Integer age;
}
@PostMapping("2")
public void fsdfdsf(@RequestBody User user) {
    System.out.println(user.toString());
}

3.2.2 对象属性存在List属性

@Data
public class User {
    private String name;
    private Integer age;
    private List<Integer> intList;
    private List<String> stringList;
}
@PostMapping("2")
public void fsdfdsf(@RequestBody User user) {
    System.out.println(user.toString());
    System.out.println(user.getIntList());
}

3.2.3 属性为一个对象时

@Data
public class User {
    private String name;
    private Integer age;
    private List<Integer> intList;
    private List<String> stringList;
    private Address address;
}
@Data
public class Address {
    private String addressName;
}
@PostMapping("3")
public void fsdsf(@RequestBody User user) {
    System.out.println(user.getAddress().toString());
}

3.2.4 属性为对象List时

@Data
public class User {
    private String name;
    private Integer age;
    private List<Integer> intList;
    private List<String> stringList;
    private Address address;
    private List<Address> addressList;
}
@Data
public class Address {
    private String addressName;
}
@PostMapping("4")
public void fs4dsf(@RequestBody User user) {
    System.out.println(user.getAddressList());
}
{
    "name":"hello",
    "age": 18,
    "intList":[1,2,3,4,5,6],
    "stringList":["a","b","c","d"],
    "address":{
        "addressName":"word"
    },
    "addressList":[{"addressName":"hello"},{"addressName":"word"},{"addressName":"my name is Liang"}]
}

3.3 List

@PostMapping("5")
public void fs4d8sf(@RequestBody List<String> list) {
    System.out.println(list);
}
["hello","word","my name is Liang"]

3.4 List

@Data
public class User {
    private String name;
    private Integer age;
    private List<Integer> intList;
    private List<String> stringList;
    private Address address;
    private List<Address> addressList;
}
@Data
public class Address {
    private String addressName;
}
@PostMapping("6")
public void fs48d8sf(@RequestBody List<User> userList) {
    System.out.println(userList);
}
[
    {
        "name":"hello",
        "age": 18,
        "intList":[1,2,3,4,5,6],
        "stringList":["a","b","c","d"],
        "address":{
            "addressName":"word"
        },
        "addressList":[{"addressName":"hello"},{"addressName":"word"},{"addressName":"my name is Liang"}]
    },
    {
        "name":"hello",
        "age": 18,
        "intList":[1,2,3,4,5,6],
        "stringList":["a","b","c","d"],
        "address":{
            "addressName":"word"
        },
        "addressList":[{"addressName":"hello"},{"addressName":"word"},{"addressName":"my name is Liang"}]
    }
]

3.5 参数为一个对象,一个字符串,raw参数类型如何写

正确的处理方式是新建一个DTO来接收参数。

@Data
public class SysUser {
    private String username;
}
@Data
public class SysUserDTO extends SysUser {
    private String name;
}
@PostMapping("test")
public String add(@RequestBody SysUserDTO sysUserDTO) {
    return "";
}
© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号