关于Postman自动获取token

news/2025/3/1 15:51:29/

    在使用postman测试联调接口时,可能每个接口都需要使用此接口生成的令牌做Authorization的Bearer Token验证,最直接的办法可能会是一步一步的点击,如下图:

在Authorization中去选择''Bearer Token'',然后将获取到的token粘贴在输入框中,才可以请求接口;

       这样的操作虽然可以进行,也能请求成功,获取到自己想要的数据,但是在接口量较多的情况下显然逐步操作填写token比较费时费力,为了进一步提高效率,我们可以通过实时自动获取token来直接请求接口

在 Postman 中,每次手动修改 Token 确实很麻烦,尤其是当 Token 过期或需要频繁测试接口时。为了自动化获取和配置 Token,可以通过 Postman 的 环境变量 和 Pre-request Script 功能来实现。以下是具体步骤:

  1. 开 Postman,点击右上角的 Environment Quick Look(眼睛图标)或者左侧菜单栏的Environments。

  2. 点击 Add 创建一个新的环境(例如命名为 My API Environment)。

  3. 在环境变量中添加一个变量,比如 token,用于存储 Token 值。

  4. 有一个获取Token的接口,url method body;

  5. 配置获取Token的请求  :在 Postman 中创建一个新的请求,命名为 Get Token;填写获取 Token 的接口信息(URL、Method、Body 等);在 Tests 标签页中,编写脚本将 Token 保存到环境变量中:

// 解析响应数据
const response = pm.response.json();// 检查响应中是否包含 Token
if (response.token) {// 将 Token 保存到环境变量pm.environment.set("token", response.token);console.log("Token 已保存到环境变量:", response.token);
} else {console.log("响应中未找到 Token");
}

 

     

注意事项

  • 确保接口的响应数据中包含 token 字段。

  • 如果接口返回的字段名不是 token,需要根据实际字段名修改脚本(例如 response.access_token)。

    6.如果 Token 有过期时间,可以在每次请求前检查 Token 是否过期,并自动获取新的 Token。

     6_1.在 Pre-request Script 中编写脚本:

// 检查 Token 是否存在或过期
const token = pm.environment.get("token");
const tokenExpiry = pm.environment.get("token_expiry"); // 假设你存储了 Token 过期时间if (!token || (tokenExpiry && new Date(tokenExpiry) < new Date())) {// 如果 Token 不存在或过期,发送获取 Token 的请求pm.sendRequest({url: '登录接口或者是专门获取token的接口',method: 'POST',header: {'Content-Type': 'application/json'},body: {mode: 'raw',raw: JSON.stringify({username: "your_username",password: "your_password"})}}, function (err, res) {const response = res.json();// 保存新的 Token 和过期时间pm.environment.set("token", response.token);pm.environment.set("token_expiry", new Date(new Date().getTime() + response.expires_in * 1000)); // 假设返回了 expires_in});
}

7.在其他请求中使用token

      7_1.在其他需要 Token 的请求中,可以通过 {{token}} 引用环境变量中的 Token:

8.通过上述第五步 直接Send发送请求接口可以看到返回的相关的token 、expires_in等,创建的环境中token的值就会自动填写;当你在请求其他接口时就不需要手动的CVtoken数据啦


http://www.ppmy.cn/news/1575808.html

相关文章

SQL 中的 EXISTS 子句:探究其用途与应用

目录 EXISTS 子句简介 语法 EXISTS 与 NOT EXISTSEXISTS 子句的工作原理实际应用场景 场景一&#xff1a;筛选存在关联数据的记录场景二&#xff1a;优化查询性能 EXISTS 与其他 SQL 结构的比较 EXISTS vs. JOINEXISTS vs. IN 多重 EXISTS 条件在 UPDATE 语句中使用 EXISTS常见…

Spring Boot + Redis + Sa-Token

参考文献 Sa-Token实现分布式登录鉴权&#xff08;Redis集成 前后端分离&#xff09;-腾讯云开发者社区-腾讯云 介绍 StpInterface 是 Sa-Token 框架中的一个接口&#xff0c;属于 Sa-Token 身份认证与授权框架的一部分。该接口提供了一些方法来实现自定义的身份认证和授权管…

Web自动化之Selenium添加网站Cookies实现免登录

在使用Selenium进行Web自动化时&#xff0c;添加网站Cookies是实现免登录的一种高效方法。通过模拟浏览器行为&#xff0c;我们可以将已登录状态的Cookies存储起来&#xff0c;并在下次自动化测试或爬虫任务中直接加载这些Cookies&#xff0c;从而跳过登录步骤。 Cookies简介 …

信息系统的安全防护

文章目录 引言**1. 物理安全****2. 网络安全****3. 数据安全****4. 身份认证与访问控制****5. 应用安全****6. 日志与监控****7. 人员与管理制度****8. 其他安全措施****9. 安全防护框架**引言 从技术、管理和人员三个方面综合考虑,构建多层次、多维度的安全防护体系。 信息…

搭建elasticsearch集群,8.17.0版本

搭建集群的帖子有很多&#xff0c;但是似乎新版做了一些改动。 下面说一下我启动的步骤&#xff1a;先用如下命令启动第一个节点 docker run --name es01 -it --privileged --memory"2g" \-p 9200:9200 -p 9300:9300 \-e cluster.namemy-application \-e node.name…

Virtual Scrolling 虚拟滚动优化方案

虚拟滚动&#xff08;Virtual Scrolling&#xff09;是一种优化前端渲染大量数据的技术&#xff0c;它通过按需渲染可见区域的内容&#xff0c;避免一次性创建所有 DOM 元素&#xff0c;从而解决性能问题。以下是其核心原理&#xff1a; 1. 核心思想 物理世界&#xff1a;假设…

Rust学习总结之-match

Rust 有一个叫做 match 的极为强大的控制流运算符&#xff0c;它允许我们将一个值与一系列的模式相比较&#xff0c;并根据相匹配的模式执行相应代码。模式可由字面量、变量、通配符和许多其他内容构成。 一&#xff1a;match定义 可以把 match 表达式想象成某种硬币分类器&a…

YOLOv11-ultralytics-8.3.67部分代码阅读笔记-ops.py

ops.py ultralytics\models\utils\ops.py 目录 ops.py 1.所需的库和模块 2.class HungarianMatcher(nn.Module): 3.def get_cdn_group(batch, num_classes, num_queries, class_embed, num_dn100, cls_noise_ratio0.5, box_noise_scale1.0, trainingFalse): 1.所需的库…