118.7. path 和 uriTemplate 语法
path 和 uriTemplate 选项使用 REST 语法来定义,您可以在其中使用支持参数定义 REST 上下文路径。
注意
如果没有配置 uriTemplate,则 path 选项的工作方式相同。如果您只配置路径或者配置这两个选项,则这无关紧要。虽然配置路径和 uriTemplate 是使用 REST 的一个更常见的做法。
以下是只使用路径的 Camel 路由
from("rest:get:hello") .transform().constant("Bye World");
from("rest:get:hello")
.transform().constant("Bye World");
以下路由使用参数,该参数映射到带有键"me"的 Camel 标头。
from("rest:get:hello/{me}") .transform().simple("Bye ${header.me}");
from("rest:get:hello/{me}")
.transform().simple("Bye ${header.me}");
以下示例配置了基础路径为 "hello",然后使用 uriTemplates 配置两个 REST 服务。
from("rest:get:hello:/{me}") .transform().simple("Hi ${header.me}"); from("rest:get:hello:/french/{me}") .transform().simple("Bonjour ${header.me}");
from("rest:get:hello:/{me}")
.transform().simple("Hi ${header.me}");
from("rest:get:hello:/french/{me}")
.transform().simple("Bonjour ${header.me}");
注意
Rest 端点路径不接受转义的字符,如 加号
。这是 Apache Camel 3 的默认行为。