Postman 保存 token 到环境变量

思路

用 Postman 的 Tests(测试脚本) 从登录接口的响应里提取 token,存进环境变量(Environment Variable),然后在其他请求的 Headers 里引用这个变量即可,无需每次手动复制粘贴。

步骤

1. 在登录请求的 Tests 标签页写脚本

打开你的登录接口请求 → 点击 Tests(新版 Postman 叫 Post-response)→ 写入:

// 解析响应体
const res = pm.response.json();

if (res.success && res.data && res.data.token) {
    // 存入环境变量(推荐)
    pm.environment.set("token", res.data.token);
    console.log("Token 已保存:", res.data.token);
} else {
    console.warn("登录失败或未拿到 token", res);
}

如果你没有建 Environment,也可以用 pm.globals.set("token", res.data.token) 存全局变量,效果类似,但 Environment 更规范(不同环境/账号互不干扰)。

2. 确认 Environment 已选中

右上角环境下拉框,选中你正在用的那个 Environment(哪怕是空的也要建一个并选中),否则 pm.environment.set 不会生效。

3. 在其它请求里引用这个变量

在需要携带 token 的请求上:

方式 A:手动在 Headers 里加

Key Value
Authorization {{token}}

或者如果后端要求带 Bearer 前缀:

Authorization: Bearer {{token}}

具体 header 名(AuthorizationTokenX-Token 等)要和你后端拦截器实际读取的 header 名一致——从你贴的 AuthService 代码看,它内部没有体现具体是从哪个 header 读 token 的(是在 Controller/拦截器层做的),需要你确认一下实际接口用的 header 名。

方式 B:在 Authorization 标签页配置(更推荐,管理更清晰)
– 请求的 Authorization 标签页 → Type 选 API KeyBearer Token
– Key 填 token(或你后端真实的 header 名),Value 填 {{token}}
– Add to 选 Header

4. 让整个 Collection 都自动带上 token(一次配置,全局生效)

不想每个请求都单独配置的话:

  1. 点击 Collection 名称EditAuthorization 标签页
  2. Type 选 API Key
  3. Key: Authorization(或你的实际 header 名),Value: {{token}},Add to: Header
  4. 保存

之后 Collection 下所有请求,只要它们自己的 Authorization 设置成 Inherit auth from parent(这是新建请求的默认值),就会自动带上 {{token}},不需要逐个配置。

效果

  1. 先跑一次登录请求 → Tests 脚本自动把 token 存进环境变量
  2. 后续所有请求(配置了 Inherit auth from parent 或手动写了 {{token}} 的)都会自动带上最新的 token
  3. 重新登录一次,变量自动更新,无需手动复制