我正在使用postman对REST API进行一些测试。为了登录,我使用一个post请求,该请求用一个令牌响应,我需要保留该令牌以用于另一个请求。我是这样做的:
然后我想在另一个请求中使用它,该请求需要在头部中使用该令牌:
好像没有发令牌,我哪里做错了?
fhg3lkii1#
假设登录响应是:
{ "message": { "token":"Some token value here" } }
在最新的postman中有一个轻微的变化,这里是设置变量的语法:
var data = pm.response.json(); pm.environment.set("token", data.message.token);
阅读更多信息:https://learning.getpostman.com/docs/postman/environments_and_globals/variables/
j7dteeu82#
问题是我使用的是postman.setEnvironmentVariable()而不是postman.setGlobalVariable()。我找到答案了here
postman.setEnvironmentVariable()
postman.setGlobalVariable()
qlfbtfca3#
我在Postman的Tests选项卡中使用了下面的脚本,它对我很有效。
pm.environment.set("access_token", JSON.parse(responseBody).access_token);
在我的第一个API中设置了访问令牌之后,我将在第二个API中传递该访问令牌。
mwecs4sa4#
您可以将令牌保存到环境变量中,并在该集合下的任何请求中访问。可能这个链接会有所帮助:Extracting data from responses and chaining requests
nnvyjq4y5#
1.转到登录API1.转到“测试”选项卡。1.添加以下脚本。此脚本将使用响应令牌设置变量“AuthToken”。var jsonData = JSON.parse(responseBody);postman.setEnvironmentVariable(“AuthToken”,jsonData.data.accessToken);
k0pti3hp6#
除了上面Gaurav的回答,可能先检查响应的状态会更好:
if(pm.response.code === 200) { pm.environment.set('authToken', pm.response.json().token) }
6条答案
按热度按时间fhg3lkii1#
假设登录响应是:
在最新的postman中有一个轻微的变化,这里是设置变量的语法:
阅读更多信息:https://learning.getpostman.com/docs/postman/environments_and_globals/variables/
j7dteeu82#
问题是我使用的是
postman.setEnvironmentVariable()
而不是postman.setGlobalVariable()
。我找到答案了here
qlfbtfca3#
我在Postman的Tests选项卡中使用了下面的脚本,它对我很有效。
在我的第一个API中设置了访问令牌之后,我将在第二个API中传递该访问令牌。
mwecs4sa4#
您可以将令牌保存到环境变量中,并在该集合下的任何请求中访问。可能这个链接会有所帮助:
Extracting data from responses and chaining requests
nnvyjq4y5#
1.转到登录API
1.转到“测试”选项卡。
1.添加以下脚本。此脚本将使用响应令牌设置变量“AuthToken”。
var jsonData = JSON.parse(responseBody);postman.setEnvironmentVariable(“AuthToken”,jsonData.data.accessToken);
k0pti3hp6#
除了上面Gaurav的回答,可能先检查响应的状态会更好: