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()的方法来把字符串转换成一个正则表达式。

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

相关推荐
IT_Octopus2 小时前
JSON 日志里的 `{“$ref“:“$.xxx“}`:从 fastjson 兼容包到原生 fastjson2 的迁移实录
开发语言·python·json
2601_962293533 小时前
浅学python | 正则表达式集锦
正则表达式·字符串匹配·python知识·浅学python·ip地址检查
2601_962295583 小时前
Python中正则表达式的知识汇总分享
python·正则表达式·模块·语法·匹配
启观川5 小时前
Python基础-第 16 章 综合案例:客户信息管理系统
开发语言·笔记·python·正则表达式
2601_962294056 小时前
Python 操作 Word:如何查找、替换和批量修改文本
python·正则表达式·word·文档处理·查找替换
数据狐(Datafox)7 小时前
mercadolibre.item_get 工程实战:美客多商品详情API技术解析与落地应用
java·人工智能·mysql·json
Fcy6488 小时前
Linux下 应⽤层⾃定义协议与序列化(JSON方法)
linux·json
程序员杰哥1 天前
如何做接口测试?
自动化测试·python·测试工具·职场和发展·测试用例·接口测试·postman
半亩码田1 天前
C#转Python第4.4篇:JSON 处理:json 模块 vs System.Text.Json
python·c#·json
清水白石0082 天前
Python 类型设计深度解析:TypedDict 能否替代 dataclass?从 JSON 数据边界到 API 设计的最佳实践
java·python·json