我正在尝试将一些额外的静态数据添加到入站 http 消息(作为 URL 参数接收)有效负载,然后将其提交到基于出站 http 表单的端点。我的骡子配置如下:
<flow name="login" doc:name="login">
<http:inbound-endpoint exchange-pattern="request-response" address="http://localhost:8081/login" doc:name="Login"/>
<http:body-to-parameter-map-transformer doc:name="Body to Parameter Map"/>
<http:outbound-endpoint address="http://localhost:8090/mayapp/Main/login.do"
method="POST" contentType="application/x-www-form-urlencoded" exchange-pattern="request-response">
</http:outbound-endpoint>
</flow>
上面的代码很好地将 URL 参数转换为 http 形式的 POST(名称/值对)。我现在需要的是能够将新的名称-值对添加到 POST(ed) 数据中?我发布的表单需要一些静态数据(作为隐藏的 HTML 字段发布),我希望将其作为转换过程的一部分进行处理。
我已经设法使用自定义组件来完成此任务。我想知道是否有一种更简单的方法来使用 Mule 的本地转换器/消息处理器来处理这个问题!
首先,我将使用变压器而不是组件,因为它实际上是您对有效负载数据进行的转换。
其次,我想不出除 Groovy 之外的另一种转换器来修改由主体到参数映射转换器创建的映射有效负载。就像是:
<script:transformer>
<script:script engine="groovy">
<script:text>
payload['newKey'] = 'newValue'
</script:text>
</script:script>
</script:transformer>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)