我的应用API需要通过身份验证令牌进行身份验证。简而言之,我们向/authentication
端点发送请求,并使用包含令牌的JSON对象进行响应,如:
{"token": "xxxxxxxxxxxxxxxxxxxxxx"}
我们的应用程序中的每个其他API端点都需要一个包含此令牌的authentication
标头。现在,在Postman中,可以执行身份验证请求,复制令牌,打开下一个端点并手动粘贴authentication
标头。但是,在测试许多端点时,这会变得乏味且耗时。
有没有办法让邮差保存并在任何后续请求中自动添加来自一个请求的authentication
令牌?
更好的是,Postman可以在任何其他请求之前自动发送/authentication
请求吗?
答案 0 :(得分:3)
Postman在制作API请求时允许您使用各种选项。
在您的情况下,您可以在收到令牌时为其创建全局变量:
var jsonData = JSON.parse(responseBody);
postman.setGlobalVariable('token', jsonData.token);
这将放在您的Tests
标签中,以便在您的请求完成后执行此脚本。
现在,设置了一个全局变量token
,可以使用{{token}}
语法在您发出的以下API请求中进行访问。
我将以相同的例子向您展示相同的内容:
1.将纬度和经度数据保存到全局变量lat
和long
中。
2.通过引用变量的名称来重用数据,即lat
和long
,将它们括在{{lat}}
和{{long}}
等大括号内。
- 您还可以管理这些全局变量,方法是单击右上角的齿轮图标,然后选择管理环境,然后打开Globals选项卡。
- 提示:您还可以将请求保存到集合中,以便每次都不必制作URL来获取令牌。
醇>