Postman如何发送JSON数据?超详细教程
在API测试中,JSON(JavaScript Object Notation)是最常用的数据交换格式之一,Postman作为主流的API测试工具,支持多种方式发送JSON数据,无论是简单的键值对还是复杂的嵌套结构,都能轻松处理,本文将详细介绍Postman中发送JSON数据的完整步骤、常见场景及注意事项,助你高效完成API测试。
发送JSON数据的核心方法:Body + raw + JSON
Postman发送JSON数据的核心逻辑是:在请求的“Body”标签页中,选择“raw”格式,并指定内容类型为“JSON”,以下是具体操作步骤:
创建新请求
打开Postman,点击左上角“+ New”按钮,选择“HTTP Request”,创建一个新请求(或直接在集合中编辑已有请求)。
设置请求方法与URL
在请求编辑区的“Request type”下拉菜单中选择请求方法(如POST、PUT、PATCH等,JSON数据通常用于请求体,故以POST为例);在“Request URL”输入框中填写目标API的地址(如https://api.example.com/users)。
切换到“Body”标签页
点击请求编辑区下方的“Body”标签页,这是发送JSON数据的关键区域。
选择“raw”格式并指定JSON类型
- 勾选“raw”单选按钮,此时右侧会出现“Text”下拉菜单(默认显示“JSON”)。
- 确保下拉菜单选中“JSON”(若未选中,需手动切换为JSON格式),Postman会自动验证JSON格式是否正确,语法错误时会提示“Invalid JSON”。
输入JSON数据
在下方的文本框中直接输入JSON格式的数据,创建用户的请求体可写为:
{
"name": "张三",
"age": 25,
"email": "zhangsan@example.com",
"is_active": true,
"address": {
"city": "北京",
"district": "海淀区"
}
}
发送请求
点击“Send”按钮,Postman会将JSON数据作为请求体发送到服务器,在“Response”区域可查看服务器返回的结果(如状态码、响应体等)。
不同场景下的JSON数据发送技巧
场景1:发送简单JSON键值对
如果JSON数据较简单(仅包含一级键值对),直接按上述步骤输入即可。
{
"username": "test_user",
"password": "123456"
}
这种格式常用于登录、注册等接口的请求体。
场景2:发送数组形式的JSON数据
部分API(如批量创建、批量更新)要求请求体为JSON数组,在“Body”中直接写入数组格式即可:
[
{
"id": 1,
"name": "商品A",
"price": 99.9
},
{
"id": 2,
"name": "商品B",
"price": 149.9
}
]
Postman会自动识别数组格式,无需额外设置。
场景3:发送嵌套JSON数据
当JSON数据包含多层嵌套结构时,保持正确的缩进和层级即可(Postman支持语法高亮,方便检查)。
{
"user_info": {
"basic": {
"name": "李四",
"gender": "男"
},
"contact": {
"phone": "13800138000",
"emergency": {
"name": "李四的母亲",
"phone": "13900139000"
}
}
},
"preferences": ["news", "sports"]
}
注意:确保每个层级的括号(、[])配对,逗号分隔正确,避免语法错误。
场景4:使用变量动态传递JSON数据
在测试中,常需动态修改JSON数据(如用上一步返回的ID作为下一次请求的参数),Postman支持通过环境变量、全局变量或动态变量实现。
示例:假设登录接口返回的JSON为{"token": "abc123", "user_id": 100},需将user_id用于创建用户的请求体中:
- 在登录接口的“Tests”标签页中,添加脚本提取变量:
pm.environment.set("user_id", pm.response.json().user_id); - 在创建用户的JSON请求体中,用
{{变量名}}引用:{ "name": "王五", "created_by": "{{user_id}}" }发送请求时,
{{user_id}}会自动替换为环境变量中的值。
场景5:发送文件与JSON混合数据
部分API要求同时上传文件和JSON表单数据(如用户头像+用户信息),此时需使用“form-data”格式,但需将JSON数据作为“file”类型的字段处理:
- 在“Body”标签页选择“form-data”。
- 点击“Key”输入字段名(如“user_data”),右侧“Type”选择“File”。
- 在“Value”区域点击“Choose Files”上传文件(此时JSON数据需提前保存为文件,如
user.json)。 - 若需同时传递JSON文本,可再添加一个字段,Type选“Text”,Value直接写JSON字符串(需确保格式正确)。
常见问题与注意事项
确保Content-Type正确
服务器通常通过请求头的Content-Type字段判断请求体格式,发送JSON数据时,需确保请求头包含Content-Type: application/json,Postman在选择“raw+JSON”后会自动添加该请求头,若手动修改需注意匹配。
避免JSON语法错误
- 引号:JSON的键和值必须用双引号(),单引号()会导致语法错误。
- 逗号:最后一个键值对后不要加逗号(如
{"name": "张三",}是错误的)。 - 数据类型:JSON支持字符串、数字、布尔值、数组、对象、null,不支持undefined、函数等JavaScript特有类型。
大JSON数据的处理
若JSON数据较大(如配置文件、批量数据),可先保存为.json文件,在Postman的“Body”中点击“Import”直接导入,避免手动输入出错。
校验JSON格式
发送前,可在“Body”区域查看JSON的语法高亮:正确时显示绿色,错误时标红并提示问题位置(如“Unexpected token }”),也可使用第三方工具(如JSONLint)提前校验。
Postman发送JSON数据的核心操作可概括为:选择POST/PUT等请求方法 → 填写URL → 切换到Body标签页 → 选择raw格式 → 指定JSON类型 → 输入或导入JSON数据 → 发送请求,不同场景下的技巧(如变量引用、嵌套结构、混合数据),并结合Content-Type设置和语法校验,即可高效完成API测试,无论是开发调试还是接口自动化,Postman都能为JSON数据交互提供强大支持。



还没有评论,来说两句吧...