gpt4 book ai didi

postman - 检索和访问字符串化数据

转载 作者:行者123 更新时间:2023-12-05 06:34:31 27 4
gpt4 key购买 nike

我有 Get 请求,它给我如下响应

{
"var1": "value1",
"var2": "value2"
}

我将它保存在测试脚本的环境变量中,如下所示

postman.setEnvironmentVariable("allData", JSON.stringify(responseBody));

在下一个 Post 请求中,我正尝试从 Pre-request 脚本中检索上述值,如下所示

var jsonData = JSON.parse(allData)

但是我得到如下未定义的错误

There was an error in evaluating the Pre-request Script: ReferenceError: allData is not defined

我可以将每个属性设置在一个单独的变量中并且工作正常但会污染环境(因为大约有 20 个这样的属性)。请建议更好的替代方法。还建议我如何访问帖子正文请求中的各个值。我可以做类似下面的事情吗?

{
"var1": "{{jsonData.var1}}",
"var2": "{{jsonData.var2}}"
}

或者我需要在 Pre-request 脚本中为单个变量设置值并在 Body 中使用它们?

谢谢

最佳答案

如果需要从保存的变量中检索数据作为整个数据集,则需要在声明变量时对其进行引用:

var jsonData = JSON.parse(pm.environment.get("allData"))

如果您希望能够在请求正文中使用变量中的单个值,您需要在 Pre-Request Script 中单独解析它们,然后将它们存储为变量以供使用在请求正文中:

pm.environment.set("my_single_var_1", JSON.parse(pm.environment.get('allData')).var1)

pm.environment.set("my_single_var_2", JSON.parse(pm.environment.get('allData')).var2)

然后您可以在请求正文中设置 {{my_single_var_1}} 语法,这些占位符将解析为您设置的值。

关于postman - 检索和访问字符串化数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50227661/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com