Postman使用json提取器和正则表达式实现接口的关联

近期在复习Postman的基础知识,在小破站上跟着百里老师系统复习了一遍,也做了一些笔记,希望可以给大家一点点启发。

一)使用json提取器实现接口关联

实际项目场景,在财务信息页面,需要上传一个营业执照,然后进行保存。

1、上传文件后,返回一个文件路径字段uploaded,保存在全局变量中

2、进行保存的时候,调用保存接口,将文件路径字段传给保存接口

3、源码

复制代码
//javascript脚本
//打印返回值
console.log(responseBody);
//json提取器
//1.先把返回的json字符串转换成一个json对象(dict字典)
var dict_data=JSON.parse(responseBody);
console.log(dict_data.data.uploaded);
//把uploaded设置成全局变量
pm.globals.set("ms_uploaded",dict_data.data.uploaded);

二)使用正则表达式提取器实现接口关联

1、上传文件后,返回一个文件路径字段uploaded,保存在全局变量中

2、进行保存的时候,调用保存接口,将文件路径字段传给保存接口

3、源码

复制代码
//正则表达式:match匹配,
//下面这条式子,表示用刚才生成的字符串去匹配新建的正则表达式
//直接把要匹配的字段复制过来,然后将字段值换成.*?即可
var zz_data=responseBody.match(new RegExp('"data":{"uploaded":"(.*?)"}'));
console.log(zz_data);
//通过下标取值并设置成全局变量
pm.globals.set("ms_uploaded",zz_data[1]);

为什么需要用new RegExp('"access_token":"(.*?)"')?,是因为'"access_token":"(.*?)"'是表示字符串,而match匹配的是正则表达式,而字符串并不代表是正则表达式,所以把字符串通过new RegExp()的方法来把字符串转换成一个正则表达式。

今天的分享就到这里,下期见。

相关推荐
littlepeanut.top12 小时前
C++中将FlatBuffers序列化为JSON
开发语言·c++·json·flatbuffers
遇见火星17 小时前
LINUX的 jq命令行处理json字段指南
java·linux·json·jq
凌波粒1 天前
SpringMVC基础教程(2)--Controller/RestFul风格/JSON/数据转发和重定向
java·后端·spring·json·restful
羊锦磊2 天前
[ 项目开发 1.0 ] 新闻网站的开发流程和注意事项
java·数据库·spring boot·redis·spring·oracle·json
码上淘金2 天前
在 YAML 中如何将 JSON 对象作为字符串整体赋值?——兼谈 Go Template 中的 fromJson 使用
java·golang·json
z2014z3 天前
LitJSON 轻量级、高效易用的 .NET JSON 库 深度解析与实战指南
json·.net
非得登录才能看吗?3 天前
正则表达式入门
正则表达式
小飞大王6663 天前
JavaScript基础知识总结(四):常见内置构造函数,正则表达式,作用域与闭包
前端·javascript·正则表达式
AAA阿giao3 天前
JavaScript 深拷贝全解析:从栈与堆内存机制到安全对象复制实践
前端·javascript·json