postman-设置自动携带token

本文详细介绍了如何在Postman中设置新变量保存登录后的token,确保所有请求自动包含授权。步骤包括创建变量、切换环境并使用测试脚本保存响应数据。适用于简化API开发过程中的权限管理。

postman设置自动携带token

新版Postman设置所有请求都自动带token登陆权限验证
参考URL: https://blog.youkuaiyun.com/qq_40259641/article/details/93082073

1) 新建变量名
在这里插入图片描述2) 切换环境
在这里插入图片描述3) 请求登录后自动设置响应的token值到当前环境变量中

在这里插入图片描述

    pm.test("Set token success", function () {
        var jsonData = pm.response.json()
        pm.environment.set("token", jsonData.data.token);
    });
  1. 其他请求接口,请求添加 token在这里插入图片描述
### 如何在Postman自动设置token为全局变量 在Postman中,可以通过编写脚本代码来自动将响应体中的token提取并设置为全局变量。以下是实现这一功能的具体方法: #### 1. 登录接口的响应体解析 在登录接口的`Tests`选项卡中,可以编写JavaScript代码来解析响应体并提取token值。例如,假设登录接口返回的JSON格式如下: ```json { "data": { "token": "your_jwt_token_here" }, "status": "success" } ``` 可以使用以下代码从响应体中提取token,并将其存储为全局变量: ```javascript // 将响应体解析为JSON对象 var jsonData = pm.response.json(); // 提取token值 var token = jsonData.data.token; // 设置全局变量 pm.globals.set("token", token); ``` 上述代码会将响应体中的`token`字段提取出来,并通过`pm.globals.set`函数将其存储为全局变量[^1]。 #### 2. 在后续请求中使用全局变量 一旦token设置为全局变量,可以在后续请求的头部(Headers)或URL参数中引用它。例如,在需要携带Bearer token的请求中,可以添加以下头部信息: ```plaintext Authorization: Bearer {{token}} ``` 这里的`{{token}}`是一个占位符,Postman会在运行时将其替换为全局变量的实际值[^2]。 #### 3. 配置环境变量(可选) 如果希望将token存储为环境变量而不是全局变量,可以使用`pm.environment.set`函数替代`pm.globals.set`。例如: ```javascript pm.environment.set("token", token); ``` 这样,token会被存储到当前选定的环境变量中。环境变量的作用范围比全局变量更小,仅限于当前环境下的请求[^4]。 #### 4. 处理token过期问题 由于token通常具有有效期(如JWT token),可能需要定期重新获取token。可以在每次请求前检查token的有效性,并在必要时重新执行登录接口以刷新token。例如: ```javascript // 检查token是否存在 var token = pm.globals.get("token"); if (!token) { // 如果token不存在,则抛出错误提示重新登录 console.error("Token is missing. Please re-login."); } ``` #### 示例代码完整版 以下是一个完整的示例代码,用于在登录接口中提取token设置为全局变量: ```javascript // 解析响应体为JSON对象 var jsonData = pm.response.json(); // 检查响应是否成功 if (jsonData.status === "success") { // 提取token值 var token = jsonData.data.token; // 设置全局变量 pm.globals.set("token", token); // 输出日志 console.log("Token has been set as a global variable:", token); } else { // 如果响应失败,输出错误信息 console.error("Failed to retrieve token. Response status:", jsonData.status); } ``` ### 注意事项 - 确保登录接口返回的JSON结构与代码中的字段名称一致,否则可能导致解析失败。 - 如果token的有效期较短,建议在测试过程中定期刷新token[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值