如何从 spring-xd 调用休息 api

How to call a rest api from spring-xd

我是 spring-xd 的新手,想了解是否可以从 springxd 调用外部 rest api。我的休息 api 期望 request header 用于 GET 请求和请求 header+消息 body 用于 POST 请求。 如何调用 URL ?

按我的理解http-client是要用的,但是不太清楚怎么用。

我还没有为这个案例编写任何流。

您将在流定义中使用 urlhttpMethod 属性

http-client --url=http://... --httpMethod=GET

您还必须设置 mappedRequestHeaders 以传递已在上游设置的任何自定义 headers。

--mappedRequestHeaders=HTTP_REQUEST_HEADERS,myHeader1,myHeader2

但是,如果您想使用 uri 变量...

url=http://somehost/foo/{bar}/{baz}

您将需要一个自定义 http-client 模块来将 <uri-variable/> child 元素添加到 outbound-gateway.

如果您想添加 headers 进行映射(通过 <header-enricher/>),您还需要自定义模块。