我的mule应用程序正在接收一个HTTP Content-Type
为multipart/form-data
的HTTP POST请求。我试图使用自定义转换器但不知道如何访问参数,因为对象是类ContentLengthInputStream
。
答案 0 :(得分:0)
您可以在流中使用#[message.inboundAttachments [payload],例如,发送http出站端点:
<message-properties-transformer doc:name="Message">
<add-message-property key="Content-type" value="multipart/form-data/>
</message-properties-transformer>
<http:outbound-endpoint exchange-pattern="request-response" method="POST" doc:name="HTTP" address="http://localhost:9090" mimeType="multipart/form-data"/>
接收可以使用:
<http:inbound-endpoint exchange-pattern="request-response" host="localhost" port="8090" connector-ref="HTTP_HTTPS" doc:name="HTTP" contentType="multipart/form-data"/>
<logger message="#[message.inboundAttachments[payload]]" level="ERROR" doc:name="Logger"/>
您可以使用变换器(AbstractMessageTransformer)并使用以下内容获取有效负载:
DataHandler inboundAttachment = message.getInboundAttachment("AttachmentName");