postman参数化 接口响应数据获取符合条件的内容参数化给后面的接口使用
一:主要内容
- 从响应结果中找到满足条件的key,获取其value,参数化给后面的接口使用
二:参数化获取想要的value值,传给后面的接口使用
有时我们获取的响应数据,需要的那个字段可能在一个数组里面,需要我们提取满足条件的该字段来拿到对应的值,如:
下面一段响应数据,我想拿到员工名称为:自动化初始化员工,这个人的id
{
"result": {
"totalPages": 1,
"totalElements": 3,
"pageNumber": 0,
"pageSize": 100,
"pageOfElements": 3,
"content": [
{
"id": "1bebc5f9a0534be6828e9a1e2918ea36",
"name": "自动化初始化员工",
"mobilePhone": "13390897802",
"hasAccount": true,
"type": "EMPLOYEE",
"createDateTime": "2019-04-15 15:49:08"
},
{
"id": "0622715f7f90495a93711f0dec7e9e6d",
"name": "员工1",
"mobilePhone": "19989789878",
"hasAccount": true,
"type": "EMPLOYEE",
"createDateTime": "2019-02-25 15:09:37"
},
{
"id": "500f624e87654f4495603a421ad9c2e8",
"name": "员工2",
"mobilePhone": "18499991111",
"hasAccount": true,
"type": "STORE_OWNER",
"createDateTime": "2019-01-22 17:58:40"
}
],
"hasContent": true,
"isFirst": true,
"isLast": true
},
"code": 0,
"message": "OK"
}
实现脚本如下:
// 把responseBody转为json字符串
var data =JSON.parse(responseBody); // 获取employeeId即员工id
var employeeId="";
for(var i=0;i<data.result.content.length;i++){
if(data.result.content[i].name=="自动化初始化员工"){
employeeId=data.result.content[i].id;
console.log(employeeId);
break;
}
}
// 设置环境变量employeeId,即员工id,供后面的接口引用
pm.environment.set("employeeId",employeeId);
即tests脚本如图所示:

该接口运行后我们可以看到控制台中打印的我们拿到的员工id为:1bebc5f9a0534be6828e9a1e2918ea36,
正是我们需要的员工id,即获取正确,其他需要该值的接口都可以使用{{employeeId}}或pm.environment.get("employeeId")的方式去获取

postman参数化 接口响应数据获取符合条件的内容参数化给后面的接口使用的更多相关文章
- linux-统计文本中符合条件的内容
1, 单个条件匹配, cat results.log | grep 'status=402' 2, 多个条件匹配 1), 2个条件都要满足 cat results.log | grep "s ...
- 在List中删除符合条件的内容
objDAList.RemoveAll(s => s.daCID == "20170725152407CD");
- [VBA]定向提取符合条件的内容
要求:若A列满足值为c,则将b列对应的内容背景色调为红色,并提取出来: 代码如下: Sub naqu()Dim i As IntegerFor i = 2 To Range("a65536& ...
- Jmeter—添加断言 判断接口响应数据是否符合预期
发出请求之后,通过添加断言可以判断响应数据是否是我们的预期结果. 1 在Jmeter中发送一个状态返回200的http请求(参数故意输入错误).结果肯定是不是返回200啦. 但结果树中http请求的图 ...
- Java接口响应超时监控
为什么要监控 服务化接口是提供服务的,接口正确性.稳定性是最最重要的,在保证正确的同时需要尽量提高接口响应时间. 有的团队会有专门的工具来对系统响应时间.吞吐量做监控,但如果团队没有这种"待 ...
- 使用 yapi-to-typescript 生成接口响应数据的 TS 类型声明
TS 是越写越爽,但是很不爽的是接口响应数据一堆,每次要去手写很麻烦. 最近正好后端接口文档从一个垃圾工具切换到了 Yapi,然后去搜了下可以通过接口文档自动生成 TS 类型声明,就自己搞了下,还是很 ...
- WebApi接口 - 响应输出xml和json
格式化数据这东西,主要看需要的运用场景,今天和大家分享的是webapi格式化数据,这里面的例子主要是输出json和xml的格式数据,测试用例很接近实际常用情况:希望大家喜欢,也希望各位多多扫码支持和点 ...
- JavaScript利用replace更改所有符合条件字符
利用replace替换字符串时,在正常使用情况下默认只能更改匹配到的第一个字符 var a=new String("fffffddd"); console.log(a.replac ...
- 遍历List集合,删除符合条件的元素
List集合的遍历有三种方式:增强for循环,普通for循环,Iterator迭代器遍历 如果只是对集合进行遍历,以上三种循环都可正常遍历: (1)增强For循环遍历List集合 List<St ...
随机推荐
- Linux 下socket通信终极指南(附TCP、UDP完整代码)
linux下用socket通信,有TCP.UDP两种协议,网上的很多教程把两个混在了一起,或者只讲其中一种.现在我把自己这两天研究的成果汇总下来,写了一个完整的,适合初学者参考,也方便自己以后查阅. ...
- noip第8课资料
- Swift3 页面顶部实现拉伸效果代码
//懒加载 //顶部需要拉伸自定义视图 lazy var headView:MyHeaderView = { //let hframe = CGRect(x: 0, y: 0, width: swid ...
- 针对 easyui boolean 布尔值 的处理
1.html代码 <select class="easyui-combobox" data-options="editable:false,panelHeight: ...
- linux apache+php+mysql安装及乱码解决办法
1.乱码解决方法 首先确认mysql数据库字符集设置正确,php页面字符设置正确,之后修改apache配制文件http.conf 注释掉以下字符 AddDefaultCharset UTF-8 此为乱 ...
- Shell - 简明Shell入门05 - 条件语句(Case)
示例脚本及注释 #!/bin/bash var=$1 # 将脚本的第一个参数赋值给变量var case $var in right) echo "Right!";; wrong) ...
- ES6之Array.from()方法
Array.from()方法就是将一个类数组对象或者可遍历对象转换成一个真正的数组. 那么什么是类数组对象呢?所谓类数组对象,最基本的要求就是具有length属性的对象. 1.将类数组对象转换为真正数 ...
- NVIDIA GRID 和 NICE DCV 技术用于实现 Linux 和 Windows® 图形加速虚拟桌面
NVIDIA GRID 和 NICE DCV 技术用于实现 Linux 和 Windows® 图形加速虚拟桌面. NICE DCV: 满足 LINUX 和 WINDOWS 的远程 3D 通过 NICE ...
- 德哥PostgreSQL学习资料汇总(转)
文章来自:https://yq.aliyun.com/articles/59251?spm=5176.100239.bloglist.95.5S5P9S 德哥博客新地址:https://billtia ...
- How To Scan QRCode For UWP (2)
这篇随笔主要介绍照相预览功能,重要使用的是MediaCapture对象,MediaCapture对象还可以用来处理录音和录制视频,本文只讨论照相功能. 1:查找摄像头 后置摄像头优先,找不到后置摄像头 ...