【发布时间】:2017-09-29 16:22:36
【问题描述】:
在 flow-1 中,即在发件人中,我有两组 json 类型的附件转换器和文本文件。我正在使用 http 请求组件调用另一个应用程序(接收器)。在接收器中,我将此附件作为入站附件有效负载,而不是作为出站附件有效负载。 在发送 smtp/电子邮件时,此附件会被添加,无法删除。
我尝试使用通配符名称为 * 的复制附件,并尝试通过将值作为 message.inboundAttachments['test.json'] 来删除附件。 我观察到,所有类型的附件(设置/复制/删除)都适用于出站附件,而不适用于入站附件。
1) 如何从入站附件中删除文件? 2)如何获取我在发送者中设置为“一些数据”的接收者中的有效载荷值
代码:
发件人:
<set-attachment attachmentName="test.json" value="{'Hi':'Hello'}" contentType="text/plain" doc:name="Attachment-JSON"/>
<set-attachment attachmentName="inputdata.json" value="{'k1':'v1','k2':'v2'}" contentType="text/plain" doc:name="Attachment"/>
<set-payload value="#['some data']" doc:name="Set Payload"/>
<http:request config-ref="HTTP_Request_Configuration" path="path2" method="POST" doc:name="HTTP"/>
接收者:
<http:listener config-ref="HTTP_Listener_Configuration" path="path2" allowedMethods="POST" doc:name="HTTP"/>
<foreach collection="#[message.inboundAttachments]" doc:name="For Each">
<logger message="FileName with key: #[key] ==Initial Payload: ====#[message.payloadAs(java.lang.String)]" level="INFO" doc:name="Logger"/>
</foreach>
<remove-attachment attachmentName="#[message.inboundAttachments'test.json']" doc:name="Attachment"/>
<set-attachment attachmentName="myfile.json" value="#[{'t':'v'}]" contentType="text/plain" doc:name="Attachment-outbound"/>
骡子版本:3.8
【问题讨论】:
标签: mule