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

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


✅ 一、创建获取 Token 的请求

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

  • URL :https://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 未就绪,因此一般建议单独调用登录接口,除非你确定后续请求不依赖即时获取。

相关推荐
测试界的小码农1 天前
【 AI Agent 软件测试实战(05):任务规划与状态管理,让 Agent 学会拆解复杂测试任务】
人工智能·测试工具
和粒科技3 天前
热重分析仪TG 309 Libra Classic
测试工具
努力努力再努力wz3 天前
【Lua进阶系列】Lua 调试机制详解:从虚拟机调用栈、错误传播到 debug 库
junit·单元测试·lua
光谱SpectrAI5 天前
打开 Postman 会改 Codex?Windows 上 4 处都没有
postman
炸薯条!5 天前
博客系统测试报告
开发语言·lua
yz_aiks5 天前
Postman 自动给 Claude Code、Codex、Cursor 装插件怎么查和卸载:本机实测 5 处痕迹(Postman 12.34)
安全·postman·ai编程·开发工具·claude code
BuHuaX7 天前
Lua 与 ToLua:运行机制及热更新原理
开发语言·unity·junit·c#·lua
努力努力再努力wz7 天前
【Lua 入门系列】模块与包(一):从多文件组织到require 运行时加载机制、模块缓存、预加载搜索与 Lua 文件搜索机制
开发语言·junit·lua
UWA7 天前
多人战斗中Lua持续高耗时,是瞬时峰值还是高频调用在作祟
性能优化·lua·游戏开发
努力努力再努力wz8 天前
【Lua 入门系列】从执行模型到事件驱动:一文理解 Lua 有栈协程、挂起恢复与协作式调度
开发语言·lua