将 JSON 数组数据从 REST 数据工厂原样复制到 Azure Blob

Copy JSON Array data from REST data factory to Azure Blob as is

我已经使用 REST 从 API 和包含数组的 JSON 输出格式中获取数据。当我尝试将 JSON 复制到 BLOB 时,因为它正在使用复制 activity,我只得到第一个 object 数据,其余的被忽略。

文档中说我们可以通过跳过数据集上的架构部分并复制 activity 来按原样复制 JSON。我按照相同的方式进行操作,得到如下输出。

https://docs.microsoft.com/en-us/azure/data-factory/connector-rest#export-json-response-as-is

尝试在没有模式的情况下复制 activity,使用 header 作为第一行并将文件输出到 BLOB 作为 .json 和 .txt

示例 REST 输出:

{
  "totalPages": 500,
  "firstPage": true,
  "lastPage": false,
  "numberOfElements": 50,
  "number": 0,
  "totalElements": 636,
  "columns": {
    "dimension": {
      "id": "variables/page",
      "type": "string"
    },
    "columnIds": [
      "0"
    ]
  },
  "rows": [
    {
      "itemId": "1234",
      "value": "home",
      "data": [
        65
      ]
    },
    {
      "itemId": "1235",
      "value": "category",
      "data": [
        92
      ]
    },
    ],
  "summaryData": {
    "totals": [
      157
    ],
    "col-max": [
      123
    ],
    "col-min": [
      1
    ]
  }
}

BLOB 输出如下文本:这只是第一个 object 数据

totalPages,firstPage,lastPage,numberOfElements,number,totalElements
500,True,False,50,0,636

如果您想按原样编写 JSON 响应,可以使用 HTTP connector。但是,请注意 HTTP 连接器不支持分页。

如果您想继续使用 REST 连接器并写入一个 csv 文件作为输出,您能否指定您希望如何写入嵌套对象和数组?

在csv文件中,我们不能写数组。您始终可以使用 custom activity or an azure function activity 调用 REST API,按照您想要的方式解析它并写入 csv 文件。

希望对您有所帮助。