从条件匹配的json返回特定的propery

时间:2017-02-08 14:26:49

标签: java json jsonpath

我使用rest-assured并尝试访问id,其中condition like = false与restassured jsonpath匹配。

{
"data": {
    "content": [{
        liked=true,
        id=7fe9cb9a-51e9-e611-80bb-000c297d31d1
    },
    {
        liked=true,
        id=f60a496d-e5d1-e611-80ba-000c297d31d1
    },
    {
        liked=false,
        id=4fb4abfb-8ac3-e611-80ba-000c297d31d1
    }]
    }
}

以下代码返回所有对象,但我只需要id属性列表。我怎么能这样做?

List<String> aa = response.get("data.content.findAll { content -> content.isLiked == false }");

1 个答案:

答案 0 :(得分:0)

使用此解决方案仅返回带条件

的必需属性
    ReadContext rx = JsonPath.parse(resp.getBody().asString());
    List<String> asdf = rx.read("data.content[?(@.isLiked == false)].id");