网站闭关保护怎么做,打扑克网站推广软件,浙江省工程建设信息官方网站,芜湖的网站建设公司Postman之数据提取 1. 提取请求头\request中的数据2. 提取响应消息\response中的数据3. 通过正在表达式提取4. 提取cookies数据 本文主要讲解利用pm对象对数据进行提取操作#xff0c;虽然postman工具的页面上也提供了一部分的例子#xff0c;但是实际使用时不是很全面#… Postman之数据提取 1. 提取请求头\request中的数据2. 提取响应消息\response中的数据3. 通过正在表达式提取4. 提取cookies数据 本文主要讲解利用pm对象对数据进行提取操作虽然postman工具的页面上也提供了一部分的例子但是实际使用时不是很全面因此总结记录一下工作中常用到的pm对象相关方法
1. 提取请求头\request中的数据
pm.request获取请求头的所有消息包括url、请求头、请求方法、请求体等返回的是一个对象 当看懂了pm.request后想要获取具体的数据就很简单了不需要去死记只需要通过节点一层层的去取就行了 如需要获取port的值则只需要pm.request.port即可格式pm.request.xxx.xxx 示例
#获取请求头所有数据
value0 pm.request
#获取端口
value1 pm.request.url.port
#获取请求协议
value2 pm.request.url.protocol
#获取请求方法
value3 pm.request.method
#获取请求体
value4 JSON.parse(pm.request.body.raw)[out_trade_no]
#在控制台打印
console.log(value0,value1,value2,value3,value4)
#查看数据的类型
console.log(typeof(value4))注意需要注意的是获取请求体时返回的实际是一个字符串当我们要获取里面的具体某个参数时要先将字符串转换成JSON格式对象然后通过key去取对应的值格式JSON.parse(需要转换的值)[key] 如上面演示的需要转换的值就是pm.request.body.raw的返回值key就是out_trade_no 将JSON字符串转解析为对象 JSON.parse(xxx_vaule)
将对象转换为JSON字符串 JSON.stringify(xxx_value)
将对象序列化为JSON字符串 objectname.toJSON()
转换为字符串 objectname.toString()
数据的提取重点在于数据的类型、格式合理的运用以上内容格式的转换可以更方便的对数据进行操作、提取
2. 提取响应消息\response中的数据
pm.response
pm.response返回响应头所有的数据返回的是一个对象 如图 同样的需要取里面的内容时只需要用返回来的对象通过节点一层层的去取就行格式pm.response.xxx.xxx
如
//返回响应头所有的数据
value0 pm.response
//返回响应状态
value1 pm.response.status
//返回响应码
value2 pm.response.code
//获取header中key对应的值注意获取header需要用pm.response.headers
value3 pm.response.headers.toJSON()[0][key]
//控制台打印日志
console.log(value0,value1,value2,value3)pm.response.text() pm.response.text()以文本的形式返回响应数据
//以文本形式返回响应数据
value0 pm.response.text()
console.log(value0)
console.log(typeof(value0))如图 4. pm.response.josn()
pm.response.josn()以json对象的形式返回响应数据
//以son对象的形式返回响应数据
value0 pm.response.josn()
console.log(value0)
console.log(typeof(value0))如图 数据提取演示
{code: 40004,msg: Business Failed,sub_code: ACQ.TRADE_HAS_SUCCESS,sub_msg: 交易已被支付,trade_no: 2013112011001004330000121536,out_trade_no: 6823789339978248,testArr: [{id: 1,version: testV1.0.1,num: 99999},{id: 2,version: testV1.0.2,num: 66666}]
}//以son对象的形式返回响应数据
value0 pm.response.json()
//取code的值
value1 pm.response.json()[code]
//取testArr的值
value2 pm.response.json()[testArr]
//取testArr中的第一个version
value3 pm.response.json()[testArr][0][version]
console.log(value0,value1,value2,value3)结果如图 3. 通过正在表达式提取
objectname.match(表达式)匹配规则对应的内容注意只能字符串类型的值进行匹配因此对于非字符串则需要先转换为字符串才能使用 数据提取演示
{code: 40004,msg: Business Failed,sub_code: ACQ.TRADE_HAS_SUCCESS,sub_msg: 交易已被支付,trade_no: 2013112011001004330000121536,out_trade_no: 6823789339978248,testArr: [{id: 1,version: testV1.0.1,num: 99999},{id: 2,version: testV1.0.2,num: 66666}]
}//匹配testArr中第一个version
//匹配testArr中第一个version
value0 pm.response.text().match(1,version:(.*?),num)
//匹配header中的Content-Type的值
value1 JSON.stringify(pm.response.headers).match(Content-Type,value:(.*?)}])
//匹配请求头中的host
value2 JSON.stringify(pm.request.headers).match(Host,value:(.*?))
console.log(value0,value0[1],value1,value1[1],value2,value2[1]) 4. 提取cookies数据
#检查指定cookies是否存在
pm.cookies.has(name)
#获取指定名称的cookies
pm.cookise.get(name)
#将cookies以对象的形式返回
pm.cookies.toObject()