繁体   English   中英

在 Azure LogicApps 中解析 JSON

[英]Parsing JSON in Azure LogicApps

我正在尝试使用 Parse JSON 功能解析 Azure LogicApps 中的一些销售数据。 这是我正在使用的 JSON object...

{
  "12345": {
    "2020-09-03": {
      "date": "2016-11-24",
      "country": null,
      "iso": null,
      "product_id": 12345,
      "downloads": 11,
      "re_downloads": 10,
      "net_downloads": 11,
      "updates": 0,
      "revenue": "0.00",
      "gross_revenue": "0.00",
      "returns_amount": "0",
      "returns": 0,
      "gift_redemptions": 0,
      "promos": 0,
      "edu_revenue": "0.00"
      "gross_returns_amount": "0.00",
      "gross_edu_revenue": "0.00",
      "uninstalls": 0
    }
  },
  "123456": {
    "2020-09-03": {
      "date": "2016-11-24",
      "product_id": 123456,
      "downloads": 28,
      "re_downloads": 30,
      "net_downloads": 29,
      "updates": 6,
      "revenue": "19.02",
      "revenue": "27.20",
      "returns_amount": "0",
      "returns": 1,
      "gift_redemptions": 0,
      "promos": 0,
      "edu_revenue": "0.00"
      "gross_returns_amount": "0.00",
      "gross_edu_revenue": "0.00",
      "uninstalls": 2
    },
  "1234567": {
    "2020-09-03": {
      "date": "2016-11-24",
      "product_id": 1234567,
      "downloads": 28,
      "re_downloads": 30,
      "net_downloads": 29,
      "updates": 6,
      "revenue": "19.02",
      "revenue": "27.20",
      "returns_amount": "0",
      "returns": 1,
      "gift_redemptions": 0,
      "promos": 0,
      "edu_revenue": "0.00"
      "gross_returns_amount": "0.00",
      "gross_edu_revenue": "0.00",
      "uninstalls": 2
    }
  }
}

在 Azure 中使用它之前,我需要创建一个 JSON 架构,然后我将能够使用 ForEach 循环遍历产品(12345、123456、1234567)。 在此我将能够遍历日期,最后根据需要提取销售数据。

使用内置模式生成器和其他几个 JSON 模式生成器,它们似乎没有按预期工作,因为这更像是一个 static 数据有效负载,我期待一个产品数组和日期数组。

有任何想法吗?

首先,您在问题中提供的 json 样本不是有效的 json ( ,在几个地方缺失,在某些地方也缺失} )。 因此,如果您使用此 json 数据生成架构,则无法生成架构成功,并且会显示错误消息。

我将 json 示例修改如下(如果低于 json 数据与您的 json 示例不匹配,请修改您的帖子并提供有效示例)。

{
    "12345": {
        "2020-09-03": {
            "date": "2016-11-24",
            "country": null,
            "iso": null,
            "product_id": 12345,
            "downloads": 11,
            "re_downloads": 10,
            "net_downloads": 11,
            "updates": 0,
            "revenue": "0.00",
            "gross_revenue": "0.00",
            "returns_amount": "0",
            "returns": 0,
            "gift_redemptions": 0,
            "promos": 0,
            "edu_revenue": "0.00",
            "gross_returns_amount": "0.00",
            "gross_edu_revenue": "0.00",
            "uninstalls": 0
        }
    },
    "123456": {
        "2020-09-03": {
            "date": "2016-11-24",
            "product_id": 123456,
            "downloads": 28,
            "re_downloads": 30,
            "net_downloads": 29,
            "updates": 6,
            "revenue": "19.02",
            "revenue": "27.20",
            "returns_amount": "0",
            "returns": 1,
            "gift_redemptions": 0,
            "promos": 0,
            "edu_revenue": "0.00",
            "gross_returns_amount": "0.00",
            "gross_edu_revenue": "0.00",
            "uninstalls": 2
        }
    },
    "1234567": {
        "2020-09-03": {
            "date": "2016-11-24",
            "product_id": 1234567,
            "downloads": 28,
            "re_downloads": 30,
            "net_downloads": 29,
            "updates": 6,
            "revenue": "19.02",
            "revenue": "27.20",
            "returns_amount": "0",
            "returns": 1,
            "gift_redemptions": 0,
            "promos": 0,
            "edu_revenue": "0.00",
            "gross_returns_amount": "0.00",
            "gross_edu_revenue": "0.00",
            "uninstalls": 2
        }
    }
}

其次,正如您提到的,您的要求是使用“For each”来循环产品(12345、123456、1234567)。 但是您的 json 数据是 object 而不是数组,因此即使生成模式成功也无法循环它。 你的 json 数据应该像下面的格式,然后你可以循环它:

[
    {
        "12345": {
            "2020-09-03": {
                "date": "2016-11-24",
                "country": null,
                "iso": null,
                "product_id": 12345,
                "downloads": 11,
                "re_downloads": 10,
                "net_downloads": 11,
                "updates": 0,
                "revenue": "0.00",
                "gross_revenue": "0.00",
                "returns_amount": "0",
                "returns": 0,
                "gift_redemptions": 0,
                "promos": 0,
                "edu_revenue": "0.00",
                "gross_returns_amount": "0.00",
                "gross_edu_revenue": "0.00",
                "uninstalls": 0
            }
        }
    },
    {
        "123456": {
            "2020-09-03": {
                "date": "2016-11-24",
                "product_id": 123456,
                "downloads": 28,
                "re_downloads": 30,
                "net_downloads": 29,
                "updates": 6,
                "revenue": "19.02",
                "revenue": "27.20",
                "returns_amount": "0",
                "returns": 1,
                "gift_redemptions": 0,
                "promos": 0,
                "edu_revenue": "0.00",
                "gross_returns_amount": "0.00",
                "gross_edu_revenue": "0.00",
                "uninstalls": 2
            }
        }
    },
    {
        "1234567": {
            "2020-09-03": {
                "date": "2016-11-24",
                "product_id": 1234567,
                "downloads": 28,
                "re_downloads": 30,
                "net_downloads": 29,
                "updates": 6,
                "revenue": "19.02",
                "revenue": "27.20",
                "returns_amount": "0",
                "returns": 1,
                "gift_redemptions": 0,
                "promos": 0,
                "edu_revenue": "0.00",
                "gross_returns_amount": "0.00",
                "gross_edu_revenue": "0.00",
                "uninstalls": 2
            }
        }
    }
]

所以请检查您的 json 数据并进行一些修改。

暂无
暂无

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

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