Azure数据工厂-数据流外部调用-指定响应体架构

kq0g1dla  于 2023-05-18  发布在  其他
关注(0)|答案(1)|浏览(99)

我...只是不明白我该怎么处理这个。我有一个REST调用,可以获取项目列表。我将其设置为数据流的源-让Rest Linked服务提供数据。

来自REST调用的JSON是Projects对象的列表,例如...

{
"_id": "5a04b1a0",
"name": "Some name - as string",
"number": "179",
"value": null,
"state": "PUBLISHED",
"Sealed": 0,
"ndaRequired": 0,
"public": 1
}

可能有上百个这样的人。在获得列表后,我需要遍历每个列表并对https:///projects/<{_id}>进行额外的API调用,其中_id是项目ID(来自上面)此调用将为我提供具有额外字段的单个项目-嵌套的“Packages”数组

{
"_id": "5a04b1a0",
"name": "Some name - as string",
"number": "179",
"value": null,
"state": "PUBLISHED",
"Sealed": 0,
"ndaRequired": 0,
"public": 1,
"Packages": [
    {
        "_id": "59a0471db3",
        "projectId": "5a04b1a0",
        "name": "some",
        "number": "9250",
        "keywords": [
            "keyWord"
        ],
        "state": "PUBLISHED",
        "dateStart": null
    },
    {
        "_id": "934234kkd93",
        "projectId": "5a04b1a0",
        "name": "some other",
        "number": "24349374",
        "keywords": [
            "keyWord, keyword, keyword"
        ],
        "state": "UNKNOWN",
        "dateStart": null
    }
}

我不知道(语法??)为每个单独的“GetPackages”外部调用指定响应模式。请帮帮忙。在FlattenProjects阶段的“Data Preview”中,我得到了Projects的正确列表,在“Derived Column”之后,我得到了额外的“ProjectID”作为要添加的URL。如果我在 Postman 中测试完整的单个URL-它的工作,问题不是关于URL调用的正确性。我应该在“body”和/或“Type”中放什么,以便添加包。?我找不到任何文件。我可以并且知道如何使用Flatten变换,如果我需要平坦化它之后


我需要把什么放入图片中的“类型”中,这样我就可以得到

relj7zay

relj7zay1#

  • 在外部调用转换的输出选项卡中,点击【导入投影】。
  • ADF将自动检测API调用的模式,并自动填充Body类型表达式。

  • 也可以在type中手动指定正文数据结构。
    语法:(column1为数据类型,column2为数据类型......)

用实际的列名替换上述表达式的column1、column2,并给予相应的数据类型。

示例表达式:(updateTime as string, updated as string, validTimes as string)

相关问题