【发布时间】:2019-01-16 05:03:35
【问题描述】:
我有以下流。 问题背景
1.
rabbit --password='******' --queues=springdataflow-q --virtual-host=springdataflow --host=172.24.172.184 --username=springdataflow | transform | httpclient --url-expression='http://172.20.24.47:8080/push' --http-method=POST --headers-expression={'Content-Type':'application/x-www-form-urlencoded'} --body-expression={arg1:payload} | log
2.
我在本地运行 spring boot。
@RestController
public class HelloController {
@RequestMapping(value = "/push", method = RequestMethod.POST,produces = {MediaType.TEXT_PLAIN})
public String pushMessage(@RequestParam(value="arg1") String payload) {
System.out.println(payload);
return payload;
}
}
我想让兔子消息进入
httpclient,作为发布请求的“arg1”参数值。意图是发布在兔子队列上的消息被休息发布点消费,消息被 SpEL 有效负载捕获。
为此,我使用body-expression = {arg1:payload},但这不起作用,可能是语法错误。
有什么建议吗?
【问题讨论】:
标签: spring-integration spring-el spring-cloud-dataflow