如何避免邮递员的多部分表单数据中发送的JSON文本被附加到电子邮件中

如何避免邮递员的多部分表单数据中发送的JSON文本被附加到电子邮件中,json,postman,mulesoft,Json,Postman,Mulesoft,我正在尝试在mule3.8中编写电子邮件服务。我使用邮递员表单数据发送附件(文件)和文本。要求是,文本部分的处理应该不同于文件的处理 我已经为每个循环编写了Choice组件,并尝试附加文件,尝试使用文本记录当前日志,将来将使用它在电子邮件正文中打印 问题是当前代码文本也作为文本文件附加在电子邮件中。如何避免文本附加到电子邮件?此外,在多个jpg文件附件的情况下,扩展名丢失。而对于单个文件,它工作正常 我尝试在foreach循环中添加choice组件,尝试只附加接收到的表单数据的文件部分,并尝试记

我正在尝试在
mule3.8
中编写电子邮件服务。我使用邮递员表单数据发送附件(文件)和文本。要求是,文本部分的处理应该不同于文件的处理

我已经为每个循环编写了Choice组件,并尝试附加文件,尝试使用文本记录当前日志,将来将使用它在电子邮件正文中打印

问题是当前代码文本也作为文本文件附加在电子邮件中。如何避免文本附加到电子邮件?此外,在多个jpg文件附件的情况下,扩展名丢失。而对于单个文件,它工作正常

我尝试在foreach循环中添加choice组件,尝试只附加接收到的表单数据的文件部分,并尝试记录文本。文本正在循环中登录,但循环后,两个部分(文件和文本)都将连接到SMTP连接器

  <foreach collection="#[message.inboundAttachments]" doc:name="Foreach">            


        <logger message="File name:- #[payload.dataSource.part.fileName]  Key name:- #[payload.dataSource.part.name] Content type:- #[payload.dataSource.part.contentType] contents:- #[payload.dataSource.content]." 
         level="INFO" doc:name="Logger"/>

        <choice doc:name="Choice">           
            <when expression="#[payload.dataSource.part.fileName == null]">
                <set-variable variableName="notificationData" value="#[payload.dataSource.content]" doc:name="Variable"/>
                <flow-ref name="testNotificationsSub_Flow" doc:name="testNotificationsSub_Flow"/>
            </when>
            <when expression="#[payload.dataSource.part.fileName != null]">
               <set-attachment attachmentName="#[payload.dataSource.part.fileName]" value="#[payload.dataSource.content]" contentType="image/jpeg" doc:name="Attachment"/>                   
            </when>
        <otherwise>
                <logger message="neither NotificationData nor file #[payload.dataSource.part.name]" level="INFO" doc:name="Logger"/>

        </otherwise>
    </choice>       

    </foreach>

预期输出为:文件应附加,对于文本部分,只应执行子流。文本不是附件,因此不应附加到电子邮件