繁体   English   中英

如何在 mule 中将字节数组转换为多部分文件

[英]How to convert a byte array to a multipart file in mule

我有一个字节数组,但我的请求接受一个文件。[multipart]。如何将字节数组转换为多部分文件?

<http:request method="POST" doc:name="Request" outputMimeType='multipart/form-data; file=""'>

在此处输入图片说明

这对我有用。
https://docs.mulesoft.com/mule-runtime/4.2/dw-multipart-functions-form

 %dw 2.0
    import dw::module::Multipart
    output multipart/form-data
    var firstPart = "content for my first part"
    var secondPart = "content for my second part"
    ---
    {
      parts: {
        part1: Multipart::field({name:"myFirstPart",value: firstPart}),
        part2: Multipart::field("mySecondPart", secondPart)
      }
    }

您需要在 HTTP 请求之前使用 DataWeave 转换来生成 multipart/form-data 有效负载并将每个附件设置为parts对象的成员。

例如,让我们假设二进制文件在有效负载中:

    <ee:transform doc:name="Transform Message">
        <ee:message >
            <ee:set-payload ><![CDATA[%dw 2.0
            output multipart/form-data
            ---
            {
                parts : {
                    file : {
                            headers : {
                                "Content-Disposition" : {
                                "name": "file",
                                "filename": "20180721_173036.jpg"      
                            },
                            "Content-Type" : "image/jpeg",
                        }, 
                        content : payload
                    }
                }
            }]]></ee:set-payload>
        </ee:message>
    </ee:transform>
    <http:request method="POST" doc:name="Request" config-ref="HTTP_Request_configuration" path="/" />

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM