如何在 Postman 中,自动获取 Token 并将其赋值到环境变量

在 Postman 中,你可以通过 预请求脚本(Pre-request Script)测试脚本(Tests) 实现自动获取 Token 并将其赋值到环境变量,下面是完整的操作步骤:


✅ 一、创建获取 Token 的请求

通常这个请求是一个登录接口,例如:

  • URLhttps://example.com/api/login

  • 方法POST

  • Body (raw - JSON):

    json 复制代码
    {
      "username": "your_username",
      "password": "your_password"
    }

✅ 二、在登录请求的「Tests」中写入脚本,将 token 存入环境变量

假设返回的 token 在响应体中的结构如下:

json 复制代码
{
  "token": "abc123xyz"
}

在该请求的 Tests 标签页中添加脚本:

javascript 复制代码
// 提取 token
let jsonData = pm.response.json();
let token = jsonData.token;

// 存入环境变量
pm.environment.set("access_token", token);

✅ 三、在其他请求中使用这个 token

在你需要带上 token 的其他请求中,比如:

  • Header 加入:

    复制代码
    Authorization: Bearer {{access_token}}

或者根据实际接口需求设置 token 位置。


✅ 四(可选)、使用「Pre-request Script」实现自动链式调用登录接口

如果你希望 自动在发送请求前先调用登录接口获取 token ,可以将登录逻辑写在目标请求的 Pre-request Script 中:

javascript 复制代码
pm.sendRequest({
  url: 'https://example.com/api/login',
  method: 'POST',
  header: {
    'Content-Type': 'application/json'
  },
  body: {
    mode: 'raw',
    raw: JSON.stringify({
      username: 'your_username',
      password: 'your_password'
    })
  }
}, function (err, res) {
  let jsonData = res.json();
  pm.environment.set("access_token", jsonData.token);
});

⚠️ 注意:此时要确保请求在登录完成后才能正确使用 token,Postman 的异步机制可能导致 token 未就绪,因此一般建议单独调用登录接口,除非你确定后续请求不依赖即时获取。

相关推荐
技术宝哥6 小时前
Redis(2):Redis + Lua为什么可以实现原子性
数据库·redis·lua
深浅卡布星9 小时前
Postman启动时检测到版本不匹配错误
测试工具·postman
九章云极AladdinEdu13 小时前
GPU与NPU异构计算任务划分算法研究:基于强化学习的Transformer负载均衡实践
java·开发语言·人工智能·深度学习·测试工具·负载均衡·transformer
程序员小远15 小时前
UI自动化测试方案详解
自动化测试·软件测试·selenium·测试工具·ui·职场和发展·测试用例
JZMSYYQ1 天前
磁光克尔效应在量子计算中的应用
功能测试·测试工具·制造
kaixin_learn_qt_ing1 天前
脚本语言Lua
lua
小冯的编程学习之路2 天前
【软件测试】:推荐一些接口与自动化测试学习练习网站(API测试与自动化学习全攻略)
c++·selenium·测试工具·jmeter·自动化·测试用例·postman
搞不懂语言的程序员2 天前
Redis的Pipeline和Lua脚本适用场景是什么?使用时需要注意什么?
数据库·redis·lua
Ten peaches2 天前
Selenium-Java版(操作元素)
java·selenium·测试工具·html
莱茵不哈哈2 天前
初探 Skynet:轻量级分布式游戏服务器框架实战
lua·c·skynet