如何从 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是要用的,但是不太清楚怎么用。
我还没有为这个案例编写任何流。
您将在流定义中使用 url
和 httpMethod
属性
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/>
),您还需要自定义模块。
我是 spring-xd 的新手,想了解是否可以从 springxd 调用外部 rest api。我的休息 api 期望 request header
用于 GET
请求和请求 header+消息 body 用于 POST 请求。
如何调用 URL ?
按我的理解http-client是要用的,但是不太清楚怎么用。
我还没有为这个案例编写任何流。
您将在流定义中使用 url
和 httpMethod
属性
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/>
),您还需要自定义模块。