You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Logic Apps中用Liquid处理XML转JSON:提取重复元素值

提取XML中同名重复元素的Liquid模板解决方案

当前你的Liquid模板仅能获取第一个<relatedcompany>的relatedncompanyid,核心问题是直接访问customer.relatedcompany只会返回集合的第一个元素,且原模板的JSON结构(用{}包裹)会导致重复键的语法错误。以下是修正后的实现:

修正后的Liquid模板

"RelatedCompanies": [
    {% for customer in content.customers %}
        {% for company in customer.relatedcompany %}
            {"Id": "{{ company.relatedncompanyid }}"}
            {% unless forloop.last %},{% endunless %}
        {% endfor %}
    {% endfor %}
]

关键修改点

  • 调整JSON结构:将原有的{}改为[],把关联公司数据组织为数组,避免对象键重复的语法问题
  • 嵌套遍历循环:新增{% for company in customer.relatedcompany %}循环,遍历所有<relatedcompany>元素,确保每个元素的relatedncompanyid都被提取
  • 修正变量拼写:原模板中的relatedncccompanyid是拼写错误,需改为XML中的实际字段名relatedncompanyid
  • 处理JSON逗号:用{% unless forloop.last %},{% endunless %}控制数组元素间的逗号,保证最终输出的JSON格式合法

输出效果(针对示例XML)

"RelatedCompanies": [
    {"Id": "0070"},
    {"Id": "2500"}
]

内容的提问来源于stack exchange,提问作者Redduke

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 14:30:57