如何使用Postman搞定带有token认证的接口实战!

现在许多项目都使用jwt来实现用户登录和数据权限,校验过用户的用户名和密码后,会向用户响应一段经过加密的token,在这段token中可能储存了数据权限等,在后期的访问中,需要携带这段token,后台解析这段token才允许用户访问接口。

01、设置Bearer Token

如果后端项目使用的是Bearer Token进行安全认证,那么使用Postman这样操作。

设置你的环境变量

点击右上角的小眼睛,然后点击Add,添加

图片

填写你的环境名和你的变量名

图片

选择你新建的环境

图片

项目集合设置认证方式及环境变量

图片

登录接口的脚本

这个脚本的意思就是说,你的用户名和密码正确的前提下,访问后端接口会给你返回一个Token,你将这个Token储存在刚刚设置好的环境变量中,当你用别的接口访问时,由于整个项目刚刚已经设置好了访问权限使用的Token,所以你所有的接口都会携带这个token去访问,从而数据权限被后台接收和使用

// pm代表的就是postman,使用js编写脚本即可

const responseJson = pm.response.json();

console.log('-----------',responseJson)

const accesssToken = responseJson.result

if('200'==responseJson.code){

    pm.environment.set('accessToken',accesssToken)

}

图片

02、通过脚本设置Headers

Spring Security的在访问时会向请求头添加一个accessToken,可以使用脚本在集合批量添加,也可以对每一个Api手动添加Header,不过那样会很麻烦,所以我这边用脚本批量添加的方便方式。

登录请求设置环境变量

从登录结果获取accessToken,将accessToken设置到环境变量中

脚本如下

const responseJson = pm.response.json();

console.log('-----------',responseJson)

const accesssToken = responseJson.result

if('200'==responseJson.code){

    pm.environment.set('accessToken',accesssToken)

}

图片

设置集合的发送请求脚本

点选集合->进入Pre-request Scrip(请求前脚本)页签->编写脚本

图片

脚本如下

console.log("----addHeader------", pm.environment.get("accessToken"));

var accessToken = pm.environment.get("accessToken");

// 所有请求在请求前都在请求头中设置accessToken

pm.request.addHeader("accessToken:"+accessToken);

这样设置后,所有的请求都会携带登录的accessToken了。

登录接口抹除accessToken

因为我们项目的过滤器没有设置解析accessToken的脏数据,所以一旦有老的token,就会报错超时,所以登录接口在访问时一定要抹除accessToken,登录接口的Pre-request设置脚本如下:

// 移除登录接口的accessToken, 防止过期的token被过滤器解析,影响登录接口

pm.request.headers.remove("accessToken")

图片

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走! 

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

<think>好的,我现在需要帮助用户解决在Postman中如何通过登录接口获取token并在后续请求中使用的问题。首先,我得回忆一下Postman的基本操作和相关知识。根据用户提供的引用内容,特别是引用[2]和引用[3],登录接口通常用来获取token,然后需要将这个token设置为环境变量,以便其他接口使用。 首先,用户可能对Postman的环境变量不太熟悉,所以需要详细说明如何设置环境变量。步骤可能包括:发送登录请求,提取响应中的token,保存到环境变量,然后在后续请求的Header中添加这个token。 接下来,我需要考虑用户可能的操作步骤。例如,在Postman中创建一个新的请求,输入登录接口的URL,发送请求后,在Tests标签下编写脚本提取token,并设置为环境变量。然后,在下一个请求的Authorization选项卡中选择Bearer Token,并引用环境变量中的token值。 同时,用户可能会遇到一些问题,比如token提取失败或者环境变量未正确设置。这时候需要提醒用户检查响应数据的结构,确保提取路径正确,以及环境变量名称是否一致。另外,引用[1]提到Auth Type选择Bearer Token,并输入{{token}},这说明需要正确设置授权类型和环境变量语法。 可能还需要提到集合级别的变量设置,或者使用Pre-request Scripts来动态获取token,但根据引用内容,用户可能更关注基本流程。需要确保步骤清晰,避免技术术语过多,让新手也能理解。 最后,生成相关问题需要考虑用户可能进一步想了解的内容,例如自动化测试中的token管理、其他授权方式,或者如何处理token过期的情况。这些问题可以帮助用户深入学习和解决问题。</think>在Postman中通过登录接口获取token并在后续请求中使用,可通过以下步骤实现: ### 一、获取token 1. **新建登录请求** - 创建新请求,输入登录接口URL(如`/api/login`) - 设置请求方法为POST - 在Body中添加账号密码参数: ```json { "username": "test", "password": "123456" } ``` 2. **提取token** - 在Tests标签页添加脚本: ```javascript // 解析响应数据 const response = pm.response.json(); // 将token存入环境变量 pm.environment.set("token", response.access_token); ``` - 如果响应格式为`{ "token": "xxxx" }`,则使用`response.token` ### 二、使用token 1. **新建业务请求** - 创建需要身份验证的接口请求 - 进入Authorization标签页: - Type选择`Bearer Token` - Token值填写`{{token}}`[^1] 2. **验证配置** - 发送请求前检查Headers: ``` Authorization: Bearer {{token}} ``` - 确保环境变量已正确加载(右上角环境选择器) ### 三、流程示意图 ```mermaid graph TD A[发送登录请求] --> B{响应是否成功?} B -->|是| C[解析token并存储到环境变量] C --> D[后续请求携带token] B -->|否| E[检查请求参数] ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值