postman在tests页签获取响应内容:
tests页签支持javascripts语法,可以把获取的响应内容放入定义的变量中,然后使用tests[变量名]进行输出。输出语法:tests[变量名]=表达式
1.获取响应行
var code=responseCode.code;//获取响应状态码
tests[code]=true;
var name=responseCode.name;//获取响应状态信息
tests[name]=true;
2.获取响应头
2.1获取响应头中的Content-Type
var content_type=postman.getResponseHeader('Content-Type')
tests[content_type]=true;
2.2获取响应头中的cookie
var cookie=postman.getResponseCookie('security_session_verify').value
tests[cookie]=true//获取cookie
3.获取响应正文
var body=responseBody//获取body
tests[body]=true
4.获取响应时间
var time=responseTime
tests[time]=true
5.例用正则表达式截取响应部分内容
var str1='1234567abcdeabcde';
var str2=str1.match( new RegExp('1234(.+?)d'))[1];
tests[str2]=true
. 表示一个字符 + 表示一个或多个字符 ?懒惰模式//遇到第一个d就截止
下标[1] 表示只取(.+?)匹配的内容
如果下标为0,[0] 表示取'1234(.+?)d'
截取body中的内容
var body=responseBody//先获取body
tests[body]=true
var body=body.match( new RegExp('<title>(.+?)</title>'))[1]
6.响应正文为json时,可以利用postman进行解析再获取部分响应正文
var jsondatda=JSON.parse(responsebody);
var token=jsondatda.access_token;
例1:响应正文如下,取出7200
例2:返回值如下,取出id
把以上返回值复制到bejson.com中,会发现数据有三层,那怎么取呢?
例3 (解析json数组)
返回数据如下,取出id为306的值
将返回数据复制到bejson网站中,格式如下