0


使用Postman的pre-script自动获取访问token,告别手工获取

背景

我们在使用Postman时,很多后端接口都需要access-token,我们一般会选择提前在Postman中设置好获取token的request,每次访问前手动获取,复制到环境变量或者接口的header中,这里介绍通过pre-script自动获取token,不再每次都需要手动获取,提高工作效率。

在环境变量中设置基本信息

使用环境变量可以帮助我们快速切换测试环境,预生产环境,生产环境等,不再需要重新配置requests,只需要配置好环境就可以。

假设我们的系统需要使用ak+sk来获取token。
首先,我们新增我们系统的环境(多个环境这里可以新建多套), 点击Postman的Enviroments:
在这里插入图片描述
点击create new environment:
在这里插入图片描述
设置后端地址,ak,sk等变量,再预留一个空的token变量:
特别注意:要将current value设置正确
在这里插入图片描述

创建项目collection 并设置自动获取token

创建一个新的collection(原来就有就不需要重复创建了):
在这里插入图片描述
点击创建好的collection,点击pre-script:
在这里插入图片描述
编写脚本,获取token

这里提供两种类型的token获取方式,一种是常见的POST请求,json格式的请求体;一种是POST请求,x-www-form-urlencoded方式的请求体,其他的方式可以参考官方教程:

https://learning.postman.com/docs/writing-scripts/pre-request-scripts/

json格式的请求体

代码如下,注释已加:

// pm.environment.get("xxx") 即可获取前面我们设置的环境变量里面的内容 var token_request ={"url":pm.environment.get("base-url")+"/rest/v2/token","method":"POST","header":{"Content-Type":"application/json"},body:{mode:"raw",raw:JSON.stringify({"akvalue": pm.environment.get("ak"),"skvalue": pm.environment.get("sk")})}}

pm.sendRequest(token_request,function(err, response){
    console.log(response.json());// 将获取到的token放到环境变量中,后续可继续使用
    pm.environment.set("token", response.json().data)});

x-www-form-urlencoded格式的请求体

// pm.environment.get("xxx") 即可获取前面我们设置的环境变量里面的内容 var token_request ={"url":pm.environment.get("base-url")+"/rest/v2/token","method":"POST","header":{"Content-Type":"application/x-www-form-urlencoded;charset=utf-8"},body:{mode:"urlencoded",urlencoded:[{key:"ak",value: pm.environment.get("ak")},{key:"sk",value: pm.environment.get("sk")}])}}

pm.sendRequest(token_request,function(err, response){
    console.log(response.json());// 将获取到的token放到环境变量中,后续可继续使用
    pm.environment.set("token", response.json().data)});

将collection所有的request都设置使用该token

点击collection的Authorization,type选择API Key, 将认证的header设置上:
环境变量的引用方法为

 {{xxx}}

在这里插入图片描述

检验结果

直接在该clooection下增加request,他的子文件夹默认也都生效,增加效果如下:
在这里插入图片描述
选择刚才配置好的环境,发送请求:
在这里插入图片描述

完成。

标签: postman 测试工具

本文转载自: https://blog.csdn.net/weixin_44670774/article/details/136154887
版权归原作者 夏木瑾苏1 所有, 如有侵权,请联系我们删除。

“使用Postman的pre-script自动获取访问token,告别手工获取”的评论:

还没有评论