189.12. 使用标头作为输入
从 Camel 2.20 开始提供
默认情况下,jsonpath 使用消息正文作为输入源。但是,您还可以通过指定 headerName 选项来使用标头作为输入。
例如,要计算存储在名为 books 的标题中的 json 文档中的 图书 数量,您可以执行以下操作:
from("direct:start")
.setHeader("numberOfBooks")
.jsonpath("$..store.book.length()", false, int.class, "books")
.to("mock:result");
from("direct:start")
.setHeader("numberOfBooks")
.jsonpath("$..store.book.length()", false, int.class, "books")
.to("mock:result");
在上面的 jsonpath 表达式中,我们将标头名称指定为 书本,并且我们被告知我们想要将结果转换为 int.class 的整数。
XML DSL 中的相同例子是: