我在PostMan中设置了一个集合,并且能够使用以下测试成功地将我的持有者令牌值保存到环境变量
var jsonData = JSON.parse(responseBody);
pm.environment.set("mytoken", jsonData.token);
但如何设置新呼叫才能使用它?
我尝试使用
添加标题Authorization Bearer <mytoken>
但是当我发布状态是401 Unauthorized
答案 0 :(得分:5)
您可以使用Tests
标签来编写代码,以更新环境变量,如本link所述。详细了解测试脚本here。
假设auth调用的响应为:
{
"token": "woaejrlajfaoidhfalskdjfalsdijfasd"
}
然后,在Tests
标签中,您可以这样写:
var jsonData = JSON.parse(responseBody);
postman.setEnvironmentVariable("token", jsonData.token);
无论何时触发auth调用,这都会更新变量token
。此token
变量应在所有API调用的标头中使用,以自动更新。
还要检查inheriting the auth。
答案 1 :(得分:1)
pm.environment.set("JWT",pm.response.json().token)
注意:JWT
是您在环境中设置的环境变量
答案 2 :(得分:0)
在标题中我需要使用
为密钥
Authorization
表示值
Bearer {{mytoken}}
答案 3 :(得分:0)
答案 4 :(得分:0)
摘要:
您可以在Postman环境和集合中定义变量,以便通过在一个位置设置一个值并在必要时在多个位置引用它来简化您的请求。因此,您可以为Bearer Token值创建一个变量。为此,请编辑您的收藏集,然后转到“变量”标签以添加新变量。
此外,在编辑集合时,请转到“授权”标签,为集合中的所有请求设置默认授权。您可以将集合的“授权类型”设置为Bearer,并将“令牌”值设置为定义的变量。这样,您就可以对集合中的所有请求使用相同的授权令牌:
然后,为了使用集合的默认授权方法,您将需要在该集合内设置请求,以将“授权类型”设置为“从父项继承auth”。这样做将使您不必处理在每个请求上手动添加Authorization标头的问题。如果您已为集合定义了默认选项(如上图所示),则选中了“从父项继承身份”授权类型的集合中的每个请求都将自动使用正确的授权标头填充请求。
干杯!
答案 5 :(得分:0)