$.concat 函数不适用于 jsonPath 的 jayway 实现中的过滤器
$.concat function doesn't work with filter in jayway implementation of jsonPath
我正在尝试应用 jsonPath 表达式:
"$.concat($.[?(@.channel=='one' &&
@.stream=='test')].air.track.author," - ",$.[?(@.channel=='one' &&
@.stream=='test')].air.track.title)"
至JSON:
[
{
"channel": "one",
"stream": "test",
"air": {
"track": {
"author": "Jack",
"title": "book1"
}
}
},
{
"channel": "one",
"stream": "prod",
"air": {
"track": {
"author": "Alex",
"title": "book2"
}
}
}
]
我收到错误:
*“无法解析从位置 2 开始的标记。预期为 ?、'、0-9、”
但是当我尝试使用时:
"$.concat($.[0].air.track.author," - ",$.[0].air.track.title)"
结果是:"Jack - book1"
为什么使用filter调用$.concat会报错?
版本 2.5.0 中已解决的问题:
https://github.com/json-path/JsonPath/issues/620
我正在尝试应用 jsonPath 表达式:
"$.concat($.[?(@.channel=='one' &&
@.stream=='test')].air.track.author," - ",$.[?(@.channel=='one' &&
@.stream=='test')].air.track.title)"
至JSON:
[
{
"channel": "one",
"stream": "test",
"air": {
"track": {
"author": "Jack",
"title": "book1"
}
}
},
{
"channel": "one",
"stream": "prod",
"air": {
"track": {
"author": "Alex",
"title": "book2"
}
}
}
]
我收到错误:
*“无法解析从位置 2 开始的标记。预期为 ?、'、0-9、”
但是当我尝试使用时:
"$.concat($.[0].air.track.author," - ",$.[0].air.track.title)"
结果是:"Jack - book1"
为什么使用filter调用$.concat会报错?
版本 2.5.0 中已解决的问题: https://github.com/json-path/JsonPath/issues/620