PostMan动态设置全局变量
1. 前言
在开发过程中调试接口,一般都会使用PostMan。
其中有几个变量可能是好几个接口共用的,就会出现频繁手动复制(ctrl+c)、粘贴(ctrl+v)的情况。
这个过程得非常留意,生怕复制错了,或删减了某些东西,导致接口报错。
总是这样复制就显得非常繁琐和麻烦了。
那有没有办法可以让PostMan自动设置变量呢 ?
这就是本文要介绍的,PostMan动态设置变量。
1.1 本文环境
本文内容中,使用的环境如下
PostMan版本:PostMan v11.1.14- 系统 :
windows10/windows11

2. 接口
首先来介绍下文本演示的接口 。
这里用到的是阿里的百炼大模型assistant API的接口,这是用来调用阿里大模型的接口。
附上文档链接 : https://help.aliyun.com/document_detail/2741924.html?spm=a2c4g.2741923.0.0.15f64739xkEcIG
注意这里需要先申请一个dashscope-api-key,才可以调用下面的这些接口。
2.1 创建线程
代码示例
curl --location 'https://dashscope.aliyuncs.com/api/v1/threads' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <your-dashscope-api-key>' \
--data '""'
返回的结果
{"id": "thread_e99a9fe7-0433-426f-98ad-a5139c36579c","object": "thread","created_at": 1711448377850,"metadata": {},"request_id": "dd9489ec-dbdb-95d4-9ff8-cfe29b61db27"
}
2.2 创建消息
代码示例
curl --location 'https://dashscope.aliyuncs.com/api/v1/threads/thread_e99a9fe7-0433-426f-98ad-a5139c36579c/messages' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <your-dashscope-api-key>' \
--data '{"role": "user","content": "你是谁","metadata": {}
}'
返回结果
{"id": "message_f1933671-19e1-4162-ad25-7326165123e1","object": "thread.message","created_at": 1711508433283,"thread_id": "thread_e99a9fe7-0433-426f-98ad-a5139c36579c","assistant_id": "","run_id": "","role": "user","content": [{"type": "text","text": {"value": "你是谁","annotations": []}}],"file_ids": [],"metadata": {},"from": "","name": "","plugin_call": {},"tool_calls": [],"status": {},"request_id": "b3ad40b9-f052-9665-a064-dab11c34625f"
}
3. 使用PostMan调试接口
3.1 创建thread


点击send,看下返回的结果
{"id": "thread_9e70b593-3e47-4d61-9adb-4253a937d09c","object": "thread","created_at": 1717823196058,"metadata": {},"request_id": "44cc2792-d063-9578-bd6a-183698123456"
}
注意这里的id,也就是thread_id,在下一个接口中会用到。
3.2 创建message
这里的url中,有一个thread_9e70b593-3e47-4d61-9adb-4253a937d09c,也就是thread_id,是从上一个接口里取的,这里我们直接将其复制过来。

{"role": "user","content":"87787 加 788988737. 结果是多少?","metadata": {}
}

点击send,看下返回的结果
{"id": "message_9d4e6396-863e-4219-83ff-ab0fe5144b61","object": "thread.message","created_at": 1717823800660,"thread_id": "thread_9e70b593-3e47-4d61-9adb-4253a937d09c","incomplete_details": {},"completed_at": null,"incomplete_at": null,"role": "user","content": [{"type": "text","text": {"value": "87787 加 788988737. 结果是多少?","annotations": []}}],"assistant_id": "","run_id": "","file_ids": [],"metadata": {},"status": "","name": "","plugin_call": {},"tool_calls": [],"request_id": "2511defb-1ead-9bd7-8080-fed150123456"
}
4. PostMan动态设置变量
上文中,我们通过ctrl+c和ctrl+v的方式,来赋值thread_id。
那么如何让PostMan动态设置thread_id,从而不用每次去手动复制了。
4.1 打印日志
首先,我们要知道PostMan中,有一个Scripts,可以写JavaScript的代码。
Pre-request表示在这个Http请求执行前,会先调用。
Post-response表示在这个Http请求执行后,会调用。

这里,我们在Pre-request中,打印准备创建thread
console.log("准备创建thread")
在Post-response中,打印创建thread完毕
console.log("创建thread完毕")
具体显示日志的地方在PostMan左下角的Console中

现在我们执行这个Http请求,会发现打印如下日志了

4.2 设置全局变量
我们再来看下接口返回的数据
{"id": "thread_9e70b593-3e47-4d61-9adb-4253a937d09c","object": "thread","created_at": 1717823196058,"metadata": {},"request_id": "44cc2792-d063-9578-bd6a-183698123456"
}
这里我们需要取到id,并动态设置成全局变量,那需要怎么做呢 ?
,在新版responseBody已被弃用PostMan中,通过pm.response.text(),我们可以获取到response中的文本内容。
pm.response.text()
然后通过JSON.parse()可以将json字符串解析为一个Json对象
var jsonObj = JSON.parse(pm.response.text())
然后就可以通过jsonObj.id获取到id字段了
var thread_id = jsonObj.id
console.log("thread_id:"+thread_id)
最后,调用pm.globals.set()将其设置到全局变量里就好
pm.globals.set("thread_id",thread_id)
4.3 使用全局变量
使用{{}}可以获取到对应的全局动态变量
比如,我们这里就可以用{{thread_id}}来替代Url中的thread_9e70b593-3e47-4d61-9adb-4253a937d09c了
运行结果如下所示

到此,就完成了PostMan动态配置变量的操作,不用再每次复制粘贴变量值了。
5. 其他
参考文章
Use scripts to add logic and tests to Postman requests
2024最新版postman接口测试教程
相关文章:
PostMan动态设置全局变量
1. 前言 在开发过程中调试接口,一般都会使用PostMan。 其中有几个变量可能是好几个接口共用的,就会出现频繁手动复制(ctrlc)、粘贴(ctrlv)的情况。 这个过程得非常留意,生怕复制错了,或删减了某些东西,导致接口报错。…...
ACL 2023事件相关(事件抽取、事件关系抽取、事件预测等)论文汇总
ACL 2023事件抽取相关(事件抽取、事件关系抽取、事件预测等)论文汇总,后续会更新全部的论文讲解。 Event Extraction Code4Struct: Code Generation for Few-Shot Event Structure Prediction 数据集:ACE 2005 动机:与自然语言相比…...
力扣:59. 螺旋矩阵 II(Java,模拟)
目录 题目描述示例 1:代码实现 题目描述 给你一个正整数 n ,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的 n x n 正方形矩阵 matrix 。 示例 1: 输入:n 3 输出:[[1,2,3],[8,9,4],[7,6,5…...
记录SpringBoot启动报错解决
记录SpringBoot启动报错解决 报错现场 Failed to configure a DataSource: url attribute is not specified and no embedded datasource could be configured. Reason: Failed to determine a suitable driver class Action: Consider the following:If you want an embedde…...
微软代码页标识符 (Code Page Identifiers)
代码页标识符 (Code Page Identifiers) 双语对照 Identifiere标识符.NET Name.NET 名称Additional information其他信息037IBM037IBM EBCDIC US-CanadaIBM EBCDIC US-Canada437IBM437OEM United StatesOEM 美国500IBM500IBM EBCDIC InternationalIBM EBCDIC 国际字符集708ASMO…...
刷题——二叉树的后续遍历
方法一:双指针法 void postorder(TreeNode* root, vector<int>&res){if(root NULL) return;postorder(root->left,res);postorder(root->right,res);res.push_back(root->val);}vector<int> postorderTraversal(TreeNode* root) {// wri…...
用友U8 Cloud smartweb2.showRPCLoadingTip.d XXE漏洞复现
0x01 产品简介 用友U8 Cloud 提供企业级云ERP整体解决方案,全面支持多组织业务协同,实现企业互联网资源连接。 U8 Cloud 亦是亚太地区成长型企业最广泛采用的云解决方案。 0x02 漏洞概述 用友U8 Cloud smartweb2.showRPCLoadingTip.d 接口处存在XML实体,攻击者可通过该漏…...
React中的事件绑定的四种方式
1.在构造函数中绑定事件 constructor(props) {super(props);this.handleClick this.handleClick.bind(this);}2.在调用时显式绑定 <button onClick{this.handleClick.bind(this)}>Click me</button>3.使用箭头函数 handleClick () > {console.log(Button cli…...
小文件过多的解决方法(不同阶段下的治理手段,SQL端、存储端以及计算端)
上一篇介绍了小文件出现的原因以及为什么治理小文件问题迫在眉睫,本篇将为读者讲述在不同阶段下小文件治理的最佳手段以及如何针对性的解决小文件过多的问题。 小文件过多如何解决、治理方法 小文件是特别常见的现象,解决小文件问题迫在眉睫࿰…...
SGPT论文阅读笔记
这是篇想要用GPT来提取sentence embedding的工作,提出了两个框架,一个是SGPT-BE,一个是SGPT-CE,分别代表了Bi-Encoder setting和Cross-Encoder setting。CE的意思是在做阅读理解任务时,document和query是一起送进去&am…...
虚拟机与主机的网络桥接
虚拟机网路桥接是一种网络配置方式,它允许虚拟机与物理网络中的其他设备直接通信。在桥接模式下,虚拟机的网络接口通过主机的物理网卡连接到局域网中,就像主机本身一样,拥有自己的MAC地址和IP地址。这种方式使得虚拟机可以像独立的…...
urfread刷算法题day1|LeetCode2748.美丽下标的数目
题目 题目链接 LeetCode2748.美丽下标对的数目 题目描述 给你一个下标从 0 开始的整数数组 nums 。 如果下标对 i、j 满足 0 ≤ i < j < nums.length , 如果 nums[i] 的 第一个数字 和 nums[j] 的 最后一个数字 互质 , 则认为 nums[i] 和 nums…...
面向对象修炼手册(四)(多态与空间分配)(Java宝典)
🌈 个人主页:十二月的猫-CSDN博客 🔥 系列专栏: 🏀面向对象修炼手册 💪🏻 十二月的寒冬阻挡不了春天的脚步,十二点的黑夜遮蔽不住黎明的曙光 目录 前言 1 多态 1.1 多态的形式&…...
基于UDP的网络聊天室(多线程实现收和发消息)
要求:1.有新用户登录,其他在线的用户可以收到登录信息 2.有用户群聊,其他在线的用户可以收到群聊信息 3.有用户退出,其他在线的用户可以收到退出信息 4.服务器可以发送系统信息 效果图: service.c #include <head…...
【脚本工具库】随机抽取数据 - 图像和标签对应(附源码)
在数据处理和机器学习任务中,我们经常需要从大规模数据集中随机抽取一定数量的图像及其对应的标签文件,以便进行模型训练、验证或测试。手动操作不仅耗时,而且容易出错。为了解决这个问题,我们可以编写一个Python脚本,…...
【python】eval函数
1.eval函数的语法及用法 (1)语法:eval(expression) 参数说明: expression:必须为字符串表达式,可为算法,也可为input函数等。 说明:表达式必需是字符串,否则会报错&a…...
实战|记一次java协同办公OA系统源码审计
前言 因为笔者也是代码审计初学者,写得不好的地方请见谅。该文章是以项目实战角度出发,希望能给大家带来启发。 审计过程 审计思路 1、拿到一个项目首先要看它使用了什么技术框架,是使用了ssh框架,还是使用了ssm框架ÿ…...
浅浅谈谈如何利用Javase+多线程+计算机网络的知识做一个爬CSDN阅读量总访问量的程序
目录 我们发现csdn的文章 首先为了印证我们的想法 我们用postman往csdn我们任意一篇文章发起post请求 发送请求 编辑获得响应结果 我们发现我们的阅读量上涨 PostRequestSender类 但是我们经过测试发现 定义一个字符串数组 把URL放进去 然后延迟启动 在线程池里面…...
Vscode 中launch.json与tasks.json文件
Vscode 中launch.json与tasks.json文件 launch.json文件基本结构主要属性示例配置PythonCNode.js 常见配置项1. Python2. C3. Node.js 使用示例 tasks.json基本结构主要属性示例配置C 编译任务Python 运行任务Node.js 运行任务 常见配置项使用示例 tasks.json与launch.json文件…...
C#基于SkiaSharp实现印章管理(2)
上一篇文章最后提到基于System.Text.Json能够序列化SKColor对象,但是反序列化时却无法解析本地json数据。换成Newtonsoft.Json进行序列化和反序列化也是类似的问题。 通过百度及查看微软的帮助文档,上述情况下需自定义转换类以处理SKColor类型数据的…...
基于LLM与LangChain的智能项目管理Agent:架构设计与工程实践
1. 项目概述:一个面向项目管理的智能体框架 最近在开源社区里,我注意到一个名为 gannonh/agent-pm 的项目开始受到一些关注。乍一看这个名字,你可能会联想到“项目经理”或者“项目管理”,没错,这个项目的核心定位&…...
别只当稳压器用!用LM7805做个简易功放,驱动小喇叭实测(附电路图)
从稳压到扩音:用LM7805打造微型功放的创意实践 1. 重新认识LM7805:不只是稳压芯片 LM7805在电子爱好者心中一直是"稳压神器"的代名词,但鲜少有人意识到这颗经典三端稳压器隐藏的音频放大潜力。当我们撕掉它身上"5V稳压专用&qu…...
为什么顶尖社会学期刊编辑开始拒收未使用AI辅助验证的民族志推论?(NotebookLM可复现性协议首曝)
更多请点击: https://intelliparadigm.com 第一章:NotebookLM社会学研究辅助 面向质性研究的语义增强工作流 NotebookLM 是 Google 推出的基于用户上传文档进行“可信引用”的 AI 助手,特别适用于社会学研究中对访谈转录稿、田野笔记、政策…...
从Starpod项目解析个人AI工作流引擎:架构、实现与应用
1. 项目概述:从“星荚”到个人AI工作流引擎最近在AI工具圈里,一个名为sinaptik-ai/starpod的项目引起了我的注意。乍一看这个标题,可能会觉得有些抽象——“星荚”是什么?AI“豆荚”?但当你深入其GitHub仓库࿰…...
USB Type-C接口技术解析与工程实践
1. USB接口技术演进与Type-C核心优势USB Type-C接口自2014年发布以来,凭借其革命性的设计理念迅速成为移动设备的主流接口标准。作为从业十余年的硬件工程师,我见证了从USB 2.0 OTG到Type-C的完整迁移过程。与传统micro-A/B接口相比,Type-C最…...
如何评估拓客数据的有效性?避开无效内耗,精准提效
当下企业拓客越来越注重精细化,不少团队投入大量精力收集数据,却陷入“数据越多,效果越差”的困境——空号、无效线索、非目标客群占据大半,不仅浪费人力成本,更拖慢增长节奏。其实,拓客的核心不在于“量”…...
智慧航运主题汇总(2026-05-13更新)
智慧航运主要包括利用区块链、大数据、5G、卫星通讯等技术手段,以“数字化、智能化”的理念,实现航运各个业务“提升效率、提升安全、降低风险、提高收益、提升客户体验”等目标。比如利用人工智能手段,实现船舶更加安全运行(防海…...
3分钟解锁WeMod高级功能:开源工具Wand-Enhancer完全指南
3分钟解锁WeMod高级功能:开源工具Wand-Enhancer完全指南 【免费下载链接】Wand-Enhancer Advanced UX and interoperability extension for Wand (WeMod) app 项目地址: https://gitcode.com/gh_mirrors/we/Wand-Enhancer 你是否因为WeMod的高级功能需要付费…...
基于MCP协议与Graph API实现AI助手无缝集成Outlook邮箱
1. 项目概述与核心价值 最近在折腾AI工作流,发现一个挺有意思的项目: ajaya/outlook-app-mcp 。简单来说,这是一个能让你的AI助手(比如Claude Desktop、Cursor等支持MCP协议的客户端)直接读取和操作你Outlook邮箱的…...
你还在用自然语言写MJ提示词?专业级结构化提示词已进入Token级编排时代:详解::权重、--no冲突域、[]嵌套层级与多模态对齐原理
更多请点击: https://intelliparadigm.com 第一章:自然语言提示词的局限性与结构化范式跃迁 传统自然语言提示(Prompt)虽具备易用性和低门槛优势,但在复杂任务中暴露出显著瓶颈:语义模糊性、上下文敏感性弱…...
