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

相关推荐
软件测试-阿涛12 小时前
【性能测试】Jmeter+Grafana+InfluxDB+Prometheus Windows安装部署教程
测试工具·jmeter·性能优化·压力测试·grafana·prometheus
慢慢沉1 天前
Lua(数据库访问)
开发语言·数据库·lua
慢慢沉1 天前
Lua协同程序(coroutine)
lua
惜.己1 天前
pytest中使用skip跳过某个函数
开发语言·python·测试工具·pytest
绿色果酱1 天前
Apipost:离线可用+AI全栈覆盖,国产API开发协作工具新标杆
postman·ai功能·apipost·apipost离线·apipost ai·ai能力·apipost操作
慧都小项1 天前
自动化UI测试工具TestComplete的AI双引擎:即时数据集 + 自愈测试
自动化测试·测试工具·llm·数据驱动测试·hipaa标准
alien爱吃蛋挞2 天前
Postman
测试工具·postman
慢慢沉2 天前
Lua元表(Metatable)
lua
程序员小远2 天前
Pytest+Selenium UI自动化测试实战实例
自动化测试·软件测试·python·selenium·测试工具·ui·pytest