Spring Boot Apache Camel 应用程序中不存在函数 IN/1

问题描述 投票:0回答:1

遵循以下澄清:

使用jq表达式,如何使用中间映射数组从json数组返回项目?

我尝试实施解决方案:

[.links[] | select(.from == "product1") | .to] as $colors | [.hits[] | select(.id | IN($colors[])) | .name]

但是我的应用程序(Spring Boot Apache Camel)给了我这个错误:“函数 IN/1 不存在”。

如果我使用“in”而不是“IN”,我会得到:“has() 不适用于 STRING”。

我正在使用 Apache Camel 4.0.0(带有相同版本的camel-jq)。

如何访问此函数或用提供相同结果的函数替换它?

apache-camel jq
1个回答
0
投票

使用等效的

select(IN($colors[]; .id))
select(any($colors[] == .id; .))
(这就是
builtin.jq
中定义过滤器的方式)

或者选择基于

INDEX
的解决方案,该解决方案也在您最初的问题下提出:)

© www.soinside.com 2019 - 2024. All rights reserved.