例子:
接口 A:
{
"customer":[
{
"name":"Jane",
"phone":"9999999",
"email":"[email protected]"
},
{
"name":"John",
"phone":"8888888",
"email":"[email protected]"
},
{
"name":"Joe",
"phone":"7777777",
"email":"[email protected]"
}
]
}
使用 JSON 提取器,我想获取所有客户的姓名:Jane、John、Joe
如何获取这些值并将它们转换为数组
[{"name":"Jane", "name":"John", "name":"Joe"}]
并将其传递给下一个 API?
注意:它必须是动态的,因此 API A 可以显示不同的 2 个名称或 1 个或更多名称,并且需要调整到数组中
首先,您的[{"name":"Jane", "name":"John", "name":"Joe"}]
JSON 不是有效的,您可以自己检查:
所以我强烈怀疑这是您需要生成的字符串。
因此,如果您确实需要构造此值,则可以执行以下操作:
添加JSR223 PostProcessor作为返回此“客户”数据的请求的子项
将以下代码放入“脚本”区域:
def response = new groovy.json.JsonSlurper().parse(prev.getResponseData())
def payload = new StringBuilder()
payload.append('[{')
0.upto(response.customer.size - 1, { index ->
payload.append('"name": "').append(response.customer[index].name).append('"')
if (index != response.customer.size - 1) {
payload.append(',')
}
})
payload.append('}]')
vars.put('payload', payload as String)
${payload}
在需要的地方引用生成的值
演示:
更多信息:
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句