将JSON HTTP请求转换为XML

Convert and Transform JSON HTTP request to XML

我需要通过三个步骤来创建Logic Apps工作流:

  • 收到HTTP请求时(JSON)
  • 将Json从请求转换为XML
  • 将XML文件保存到FTP
  • 到目前为止我所做的:

  • 添加操作"收到HTTP请求时"
  • 添加Liquid将JSON转换为XML
    (但我看不到将JSON转换为XML的选项...仅将JSON转换为JSON,将JSON转换为
    TEXT,XML到JSON,XML到TEXT)
  • 添加操作" FTP-创建文件"
  • 我还创建了Integration Account,并尝试添加用于将JSON映射到XML的映射,但是我找不到任何示例/模板来执行此操作...

    有可能吗?也许还有另一种在这两种格式之间转换的方法?


    当您只想将JSON有效负载转换为XML文件而不对数据进行任何转换时,可以使用工作流定义语言的内置xml()函数。

    文档中的详细信息:工作流定义语言参考#xml

    我已经制作了一个小型测试Logic App来演示您的用例。看起来像这样:

    enter

    备注:仅当您的JSON消息具有单个rootnode时,此方法才有效。否则,xml转换将失败。您会收到此错误:

    The provided value cannot be converted to XML: 'JSON root object has multiple properties. The root object must have a single property in order to create a valid XML document. Consider specifying a DeserializeRootElementName.

    您可以通过将根节点连接到JSON有效负载来解决此问题。该函数将如下所示:@xml(json(concat('{"rootnode":',triggerBody(),'}')))

    祝你好运测试一下。如果您需要更多帮助,请告诉我。