149.2. 例子

使用 POST 向正文调用 url 并将响应返回为 out 消息。如果正文是 null 调用 URL,则使用 GET 并将响应返回为 out 消息

Java DSL

Spring DSL

from("direct:start")
  .to("http://myhost/mypath");
<from uri="direct:start"/>
<to uri="http://oldhost"/>

您可以通过添加标头来覆盖 HTTP 端点 URI。Camel 将调用 http://newhost。这非常方便,例如 REST URL。

Java DSL

from("direct:start")
  .setHeader(Exchange.HTTP_URI, simple("http://myserver/orders/${header.orderId}"))
  .to("http://dummyhost");

URI 参数可以直接在端点 URI 或一个标头上设置

Java DSL

from("direct:start")
  .to("http://oldhost?order=123&detail=short");
from("direct:start")
  .setHeader(Exchange.HTTP_QUERY, constant("order=123&detail=short"))
  .to("http://oldhost");

将 HTTP 请求方法设置为 POST

Java DSL

Spring DSL

from("direct:start")
  .setHeader(Exchange.HTTP_METHOD, constant("POST"))
  .to("http://www.google.com");
<from uri="direct:start"/>
<setHeader headerName="CamelHttpMethod">
  <constant>POST</constant>
</setHeader>
<to uri="http://www.google.com"/>
<to uri="mock:results"/>