我有一个返回JSON二维列表的服务。我需要根据两个元素兄弟的值在第二维中找到一个值。
此JSON响应的子列表如下所示:
{
"rows" :
[
["15053518617",
"MyItemName",
"CallActivityActivated",
"4",
"354687456539856756757577547674562234",
"CallActivity",
"2010913-e8345ac7-6c54-4835-933b-3f7ddd2dd777",
"B0012345-2017-01-13",
"Activated",
"",
"\"null\""
],
...more rows...
]
}
我需要访问此数组元素中的元素7。但是,我不知道这些行将被返回的顺序。所以我需要JSONPATH
语法,我可以在SoapUI属性传输中使用该行来通过此行中另外两个元素的组合来识别此行。
我可以通过以下方式访问此特定响应中具有硬编码值的行:
$.rows.[0].[7]
返回:
B0012345-2017-01-13
因为我不能依赖于相同顺序的行(与第一维不同,第二维中元素的顺序是一致的。)
我需要能够替换" [0]"查询将通过在第二维中找到目标值的两个兄弟来返回该数组偏移量:
$.rows.[?([1] == 'MyItemName' AND [2] == 'CallActivityActivated')].[7]
该语法不起作用。我刚回来[null]。我尝试过很多种组合。在这里列出所有内容只会增加混乱。
任何人都可以解释如何构造必要的JSONPATH语句吗?