Postman:通过循环提取所需响应参数

使用postman调试接口时,产生了这么一个想法:

想提取所有的省份信息,存于一个列表中,返回字段如下图所示:

在这里插入图片描述

Postman的 Tests(执行后脚本)可以实现操作

一、使用循环方法,获取所有的省份名称列表
// new 一个对象接收响应信息
var jsonData = pm.response.json();

// new 一个对象接收 count 列表字段的长度(循环遍历次数)
var count = jsonData.data.provinces.length

// new 一个空列表(一会接收并存储省份名称)
var list = []

// 开始 for 循环遍历 num 列表
for(var i=0; i < count; i++ ){
    // 使用变量 provincesName 接收省份名称
    provinceName = jsonData.data.provinces[i].name
    
    // 使用空列表 list 存储遍历的省份名称
    list.push(provinceName)
};

// 控制台打印省份列表
console.log("所有省份名称列表:",list)
二、使用 map() 方法进行遍历取值

map() 方法创建一个新数组,其结果是该数组中的每个元素都调用一个提供的函数后返回的结果

// new 一个对象接收响应信息
var jsonData = pm.response.json();

// 创建一个新数组:x,数组中的每个元素都会去调用 .Name 方法并且返回对应字段
var provinces = jsonData.Data.Provinces.map(x => {return x.Name})

// 将返回数组:x 的结果打印出来
console.log(provinces)
三、两个方法均可以实现输出所有的省份名称

在这里插入图片描述

四、拓展学习:如何取出所有的【仅城市】的信息

// new 一个对象接收响应信息
var jsonData = pm.response.json();

// 准备一个空列表(用来插入得到的数据)
var result = [];

// 创建一个新数组,数组中的每个元素都会去调用提供的函数方法并且返回对应字段
jsonData.Data.Provinces.map
//   ↓ 这里的x:数据返回的是所有的Provinces组成的数组
    (x => {x.Citys.map
    //   ↓ 这里的y:数据返回的是所有的Citys组成的数组,取出Name字段并插入列表
        (y => {result.push(y.Name)})
});

// 将返回数组:x 的结果打印出来
console.log(result)

在这里插入图片描述

五、拓展学习:如何取出所有的【省份+城市】的信息

// new 一个对象接收响应信息
var jsonData = pm.response.json();

// 准备一个空列表(用来插入得到的数据)
var result = [];

// 创建一个新数组,数组中的每个元素都会去调用提供的函数方法并且返回对应字段
jsonData.Data.Provinces.map
//   ↓ 这里的x:数据返回的是所有的Provinces组成的数组
    (x => {x.Citys.map
    //   ↓ 这里的y:数据返回的是所有的Citys组成的数组,取出省份与城市的Name字段并插入列表
        (y => {result.push(x.Name+","+y.Name)})
});

// 将返回数组:x 的结果打印出来
console.log(result)

在这里插入图片描述

  • 10
    点赞
  • 47
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值