Azure 数据工厂使用 REST Multipart/form-data 上传文件

Posted

技术标签:

【中文标题】Azure 数据工厂使用 REST Multipart/form-data 上传文件【英文标题】:Azure Data Factory Uploading file using REST Multipart/form-data 【发布时间】:2022-01-17 09:34:51 【问题描述】:

我正在调用一个 REST 端点,它将文件作为多部分表单数据作为正文。这是邮递员 CURL

curl --location --request POST 'https://assets-api-uat.test.services/api/upload' \
--header 'Content-Type: multipart/form-data' \
--header 'loadType: DELTA' \
--header 'Authorization: Bearer accessToken' \
--header 'Cookie: ARRAffinity=6d69fc278349240ce92e5954e0b0d0f1ee5c6964839ee2281238f950751dbfa5; ARRAffinitySameSite=6d69fc278349240ce92e5954e0b0d0f1ee5c6964839ee2281238f950751dbfa5' \
--form 'upload=@"/C:/Users/test/Downloads/testhazards.zip"'

以上工作正常。

我正在尝试使用 Azure 数据工厂实现上述功能,如下所示

但是,Azure 数据工厂给出错误请求错误 (400)。如何在网络活动中指定“upload=filename”?

以下是基于建议答案的更改

【问题讨论】:

【参考方案1】:

您可以传递数据集和链接服务以供活动使用和访问。在网络活动的设置选项卡中,Datasets 属性表示传递给端点的数据集列表。

您可以参考 MS 文档中的此示例 Request payload schema:


    "body": 
        "myMessage": "Sample",
        "datasets": [
            "name": "MyDataset1",
            "properties": 
                ...
            
        ],
        "linkedServices": [
            "name": "MyStorageLinkedService1",
            "properties": 
                ...
            
        ]
    

结帐Similar ask

【讨论】:

这方面运气不佳。这是错误消息,我已经更新了问题。调用端点“assets-api-uat.test.services/api/upload”时出错。响应状态代码:“未知”。更多详细信息:异常消息:“发送请求时发生错误。”。

以上是关于Azure 数据工厂使用 REST Multipart/form-data 上传文件的主要内容,如果未能解决你的问题,请参考以下文章

Azure 数据工厂 - 尝试将参数添加到 REST API 请求正文中的动态内容

是否可以使用 ARM 模板重新部署 Azure 数据工厂

是否可以使用 Azure Synapse 和 Azure 数据工厂将 CSV 转换为 XML?

如何使用 Azure 数据工厂使用私有终结点访问 Azure Function?

使用 azure 数据工厂管道将 json 对象存储到 azure 表存储实体

如何使用 azure 数据工厂拆分列值