【问题标题】:Unable to Define Array as Variable in Postman无法在 Postman 中将数组定义为变量
【发布时间】:2020-01-12 19:52:22
【问题描述】:

我有一个 POST 请求,其中数据以 JSON 形式出现。对于通过集合运行器进行测试,我想从 JSON 文件中选择那些,但我无法在 Array 中定义变量并且卡住需要支持。输入数据如下: 输入数据:

{
    "field1": "1",
    "field2": "111111111111111",
    "field3": "value3",
    "field4": [
        [],
        [],
        []
    ],
    "master_field": {
        "field5": 11,
        "field6": 33.0,
        "field7": [5, 184]
    },
    "field8": [
        [10, 6, -1030],
        [-83, 0, -999],
        [-54, 21, -1054],
        [-162, 21, -990]
    ],
    "field9": 92
}

我尝试在像 JSON 这样的 POSTMAN Body 中发出请求,它只工作到 field3:

{
"field1": "{{field1}}",
"field2": "{{field2}}",
"field3": "{{field3}}",
"field4": 
[
"{{field4}}"
]
}

它不会向前解析 field4。谢谢

【问题讨论】:

标签: arrays json environment-variables postman postman-collection-runner


【解决方案1】:

为了在 Postman 变量中存储数组,您必须对它们进行字符串化。 假设您的 field4 值是测试脚本中的一个数组,只需 JSON.stringify() 并将其保存在环境变量中。

然后您可以直接在请求正文中使用该变量。

{
  "field1": "{{field1}}",
  "field2": "{{field2}}",
  "field3": "{{field3}}",
  "field4": {{field4}}
}

请注意,field4 变量不在引号内。

【讨论】:

  • 您好,感谢您的回复。但是, "field4": [[a,b],[c,d],[e,f]] 具有数组数组。如果我定义为“field4”:{{field4]}},那么数据将作为“field4”发送:a、b、c、d。它应该作为“field4”发送:[[a,b],[c,d],[e,f]] 谢谢
猜你喜欢
  • 2021-11-21
  • 2015-10-11
  • 2021-12-10
  • 1970-01-01
  • 2019-08-02
  • 1970-01-01
  • 2022-01-04
  • 2023-02-23
  • 1970-01-01
相关资源
最近更新 更多