Azure APIM|液态模板-无需集成帐户即可将JSON转换为XML [英] Azure APIM | Liquid Template - Transform JSON to XML without an Integration Account

查看:14
本文介绍了Azure APIM|液态模板-无需集成帐户即可将JSON转换为XML的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在构建一个Logic App来从我的本地SQL数据库中提取数据-将其转换为XML->;将其发送到SOAP API。

以下是我从本地数据库进入Logic App的示例数据:

{
    "ResultSets": {
        "Table1": [
            {
                "ID": "VM001",
                "FirstName": "TestFirstName",
                "LastName": "TestLastName",
                "Email": "test1@company.com",
                "DOB": "1990-05-05"
            },
            {
                "ID": "VM002",
                "FirstName": "TestFirstName2",
                "LastName": "TestLastName2",
                "Email": "test2@company.com",
                "DOB": "1990-06-06"
            }
        ]
    },
    "OutputParameters": {}
}

...然后我的计划是调用内部API并应用某种策略(我相信我们可以在入站/出站策略中使用流动模板,而不使用集成帐户或Azure函数)将上面的数据转换为下面的XML,但我正在努力:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Header/>
   <soapenv:Body>
      <userRequest>
         <extMessageId>12345</extMessageId>
         <users>
            <!--1 or more repetitions:-->
            <user>
               <ID> ID from JSON data </ID>
               <!--Optional:-->
               <FirstName> FirstName from JSON data </FirstName>
               <LastName> Lastname from JSON data </LastName>
               <Email> Email from JSON data </Email>
               <DOB> DOB from JSON data </DOB>
            </user>
         </users>
      </userRequest>
   </soapenv:Body>
</soapenv:Envelope>

谁能帮帮忙?

推荐答案

针对这一需求,我创建了一个APIM并编辑了它的策略,如下所示供您参考:

如您所述,字段<FirstName><LastName>...是可选的。如果您仍然希望<FirstName>标记以空值显示,则不需要执行任何其他操作。如果您不想在<FirstName>标签没有值时显示它,您需要编辑液体模板,如下所示:

希望能有所帮助~

这篇关于Azure APIM|液态模板-无需集成帐户即可将JSON转换为XML的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆