当前位置: 首页 > news >正文

postman 接口自动化

postman 接口关联

1、什么是接口关联?

当在接口测试中出现上一个接口的返回值需要作为下一个接口的参数。

2、接口关联如何实现?

1)获取上一个接口的返回值中的指定数据(access_token)

方式一:可以使用json对象取值,保存到全局环境变量(在所有接口中都能使用的变量)

方式二:使用正则提取,保存到全局变量

2)使用全局变量,通过{{变量名}}引用。

PS:环境变量和全局变量的区别?

环境变量绑定特定环境(如开发/测试),切换环境时值随之改变;全局变量则对所有环境通用,值保持一致

3、通过AI +Postman实现

A I提问: postman如何获取接口返回数据的JavaScript代码

1. 获取 JSON 格式的响应体 (最常用)

使用json取值,保存到全局变量

如果接口返回的是 JSON 数据,使用pm.response.json()是最标准且推荐的方式,它会自动将字符串解析为 JavaScript 对象。

var JsonData = pm.response.json(); //定义了变量,把接口返回json保存到变量中

var ReId = JsonData.renderId; //存储返回值中指定的数据

console.log(ReId) //打印到控制台,方便查看

pm.globals.set("ReId1",ReId) //保存到环境变量内

// 1. 将整个响应体解析为 JSON 对象 var jsonData = pm.response.json(); // 2. 提取具体字段 // 假设返回结构为: { "code": 200, "data": { "token": "abc123", "user": "admin" } } var token = jsonData.data.token; var userName = jsonData.data.user; // 3. 打印到控制台查看 (View -> Show Postman Console) console.log("获取到的Token:", token); console.log("用户名:", userName); // 4. 将提取的值设置为环境变量或全局变量,供后续接口使用 pm.environment.set("my_token", token); // 设置为当前环境变量 pm.globals.set("global_user", userName); // 设置为全局变量

2. 获取纯文本或 HTML 格式的响应体

如果接口返回的是 XML、HTML 或纯文本,使用pm.response.text()获取原始字符串。

正则表达式

// 1. 获取原始响应文本 var responseBody = pm.response.text(); // 2. 如果是 HTML/XML,可以使用正则表达式提取特定内容 // 例如提取 HTML 中 <input name="execution" value="xyz"> 中的 xyz var executionMatch = responseBody.match(/name="execution" value="(.*?)"/); if (executionMatch && executionMatch) { var executionValue = executionMatch; console.log("提取的 execution 值:", executionValue); pm.environment.set("execution_val", executionValue); } // 3. 如果是 XML,也可以尝试转换为 JSON (Postman 内置库) // var jsonObject = xml2Json(responseBody);
http://www.jsqmd.com/news/1185471/

相关文章:

  • 如何解决Kimi到word的格式问题?AI 导出鸭把Markdown/LaTeX编译成docx的技术拆解
  • 【2013-11-27】《Java编程思想》读书笔记:synchronized
  • stable-diffusion.cpp:纯C/C++实现AI绘画推理,打造轻量高效的生成式AI运行时
  • 表格 deepseek 工具哪个好用无需纠结,AI 导出鸭适配全场景表格导出
  • Unity 2022.3中Spine动画导入失败排查与版本兼容性解决方案
  • 2026年版中国地下运矿车市场发展战略规划及投资方向研究报告
  • Cursor多文件上下文协同失效?97%开发者忽略的context.windowSize阈值与动态裁剪策略
  • ArduSub入门指南:水下ROV运动控制原理与实战调参
  • C++26契约编程正式入标:用前置后置条件将防御式检查从文档变成编译器强制行为
  • Windows网络管理利器:Net命令实战指南与场景解析
  • 元初混沌 6G 全域通感一体化体系架构 第一卷二阶第二十五篇 三才组网体系闭环总结
  • 从哈尔到D20:多贝西小波(DB小波函数)的演进与工程选型指南
  • 【目标检测--tricks】FPN与PAN:从结构演进到实战融合
  • Windows C盘清理终极指南:从原理到实践的完整解决方案
  • springboot2.7.16到3.5.16,srpingcloud2021.0.1->2025.0.3,jdk1.8->17,升级记录一(从踩屎坑到上岸的辛酸历程)
  • 基于含噪监督的卫星影像树木计数
  • 深入解析栈缓冲区溢出:ASan原理、实战与防范指南
  • 地球作为一个意识体:基于自由能原理与复杂系统理论的推演
  • kali中使用nmcli命令进行网络配置
  • C++异常处理全解析:从语法到RAII与异常安全实战
  • 天津百达翡丽回收价格查询与靠谱回收平台实测排行(2026年7月最新数据) - 诚收名表回收平台
  • 重塑你的Xfce桌面:从轻量到精致的现代化改造
  • 关于C++面向对象设计的访问性问题详解
  • LeCun团队通用AI新突破:分层预测与能量基模型解析
  • TokenSpeed:专门为 Agentic Workloads 设计的大模型推理框架
  • 基于YOLOv8的安全手套检测系统:从原理到部署实战
  • TVA具身智能范式研究进展(5)
  • 线性回归原理与回归线数学推导详解
  • 心电基础笔记:心电导联体系
  • 【安心陪诊 Agent】Node.js 20 + Express 4 实战:Web Demo 与规则 Agent 架构