繁体   English   中英

json-path:筛选另一个数组中一个数组的子级

[英]json-path: Filter on child of an array within another array

我在JSONArray中有一个JSONArray,我想以此方式应用JSONPath表达式,这样当内部JSONArray上的条件满足时,我得到JSONObject或JSONArray。

例如:

{
  "A": [
    {
      "B": [
        {
          "id": 1
        },
        {
          "id": 2
        },
        {
          "id": 3
        }
      ],
      "C": {
        "id": 10,
        "name": "PQR"
      },
      "id": 25,
      "name": "XYZ"
    },
    {
      "B": [
        {
          "id": 4
        },
        {
          "id": 5
        },
        {
          "id": 6
        }
      ],
      "C": {
        "id": 15,
        "name": "PQR"
      },
      "id": 20,
      "name": "XYZ"
    }
  ]
}

如果我想要A的所有元素,其中C.id = 10 ,我将使用: $.A[?(@.C.id == 10)]

现在,要使用什么谓词来获取A中B.id = 1所有对象? 注意:B是JSON对象的数组。

我在$.A[?(@.B[?(@.id == 1)])]

但仅当使用Scala的Gatling实现时: http : //jsonpath.herokuapp.com/

Jayway实现似乎完全忽略了内部过滤器,并且根据其GitHub上的一个问题 ,这是一个错误。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM