提取变量
在一些具有明显上下游关系的接口中,有时需要将 A 接口的返回数据作为 B 接口的请求参数。
比如在创建宠物信息场景下,需要将 A 接口返回的 pet_id
中的数据作为后续接口的请求参数,然后在 B 接口中的「后置操作」中添加「提取变量」功能,基于 A 接口返回的结果自动提取数据并设置为变量(临时变量/环境变量/全局变量),方便其它接口运行的时候直接使用。
在后置操作中提取变量
打开项目中的某条接口,在 “后置操作” 页中添加 “提取变量” 即可,你可以将提取出来的变量保存为临时变量或其他变量类型。
从实际响应快速提取变量
直接在返回响应中(接口运行、测试报告等位置均可)hover 某个响应字段,点击右边的提取变量 icon,即可基于当前的实际响应快速提取变量。
接口间相互传递数据
例如当前 B 接口的请求参数依赖于 A 接口返回的数据,现希望 B 接口在发送请求的同时能自动获取 A 接口返回的数据并作为请求参数。实现思路如下:
- A 接口在后置操作中添加提取变量功能,将返回的数据自动提取至变量中。
- B 接口对应的参数值直接引用已提取的变量。
A 接口
打开 A 接口用例的”后置操作“页,在后置操作中添加提取变量功能。将接口返回 Response JSON 数据里的 token 值提取到名为 petId
的变量中。
B 接口
在 B 接口中的请求参数中直接填写 {{petId}}
,即可在请求中引用上一步骤中所创建的数值。
若不确定是否正确引用了 A 接口所生成的数据,可以在 B 接口的前置操作中添加以下自定义脚本:
var petId = pm.environment.get("petId");
console.log(petId)
这样就可以在控制台中查看已引用的变量值。