在Azure Logic App中JSON转XML后能否对XML元素进行修改操作?
问题解答
你的需求完全可以在Logic App内部实现,也可以选择提前修改源JSON后再做转换,两种方式都可落地,以下是具体实现方案:
方案1:转换后处理(推荐,适配性强)
使用Logic App内置的XSLT转换能力处理生成好的XML,不会改动源数据流程,适合后续还有XML调整需求的场景:
- 完成JSON转XML的原有步骤后,新增「转换XML」操作
- 上传如下XSLT模板到操作中,即可直接输出符合要求的XML:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" indent="yes"/> <xsl:template match="/ID"> <ID xmlns="someUrl"> <xsl:apply-templates select="IDRecord"/> </ID> </xsl:template> <xsl:template match="IDRecord"> <IDRecord xmlns=""> <xsl:copy-of select="*"/> </IDRecord> </xsl:template> </xsl:stylesheet>
方案2:提前修改JSON后转换(实现更简单)
Logic App的JSON转XML动作会自动识别JSON中@开头的字段为XML节点属性,你只需将源JSON调整为如下结构,转换后直接生成目标XML:
{ "ID": { "@xmlns": "someUrl", "IDRecord": [ { "@xmlns": "", "EmployeeLastName": "Doe", "EmployeeFirstName": "John", "EmployeeUserid": "JD", "SomeField": "Test" } ] } }
如果你的场景中XML结构100%固定,也可以将转换后的XML转为字符串,用内置replace表达式替换节点属性,不过该方式容错率较低,复杂场景不推荐使用。
内容的提问来源于stack exchange,提问作者DrejarN
相关产品推荐
相关产品推荐

