【问题标题】:Azure Data Factory. Unable to load files via HTTP ConnectorAzure 数据工厂。无法通过 HTTP 连接器加载文件
【发布时间】:2021-12-29 18:57:04
【问题描述】:

要将文件从远程服务器加载到 Azure BLOB 存储,我正在学习 Azure 团队的本教程:Copy data from an HTTP endpoint by using Azure Data Factory or Azure Synapse Analytics

我需要通过这个 API 从这个 site 加载公开可用的文件:通过 API https://api.usaspending.gov/api/v2/download/disaster/

使用 API(以及上述链接站点中的其他 API)的教程由 here 提供。

但是当我运行管道时,出现以下错误:

ErrorCode=HttpFileFailedToRead,'Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message=无法从 http 服务器读取数据。查看http服务器报错:远程服务器返回错误:(405) Method Not Allowed.,Source=Microsoft.DataTransfer.ClientLibrary,''Type=System.Net.WebException,Message=远程服务器返回错误:( 405) 方法不允许。,Source=System,'

问题:我们如何在 Azure 数据工厂中使用上述 API 端点从其远程服务器加载公开可用的文件?

备注:据their site/api/v2/download/disaster/ POST Returns a zipped file containing Account and Award data for the Disaster Funding

我们对 ADF Pipeline 的Source 的配置

以上源码测试成功如下图

目的地(Azure Data Lake Storage)也测试成功,如下所示

【问题讨论】:

    标签: azure azure-data-factory azure-data-lake azure-synapse azure-data-lake-gen2


    【解决方案1】:

    检查您在复制活动中使用的方法。它需要是 POST。

    此外,响应不是文件,而是提供了可以下载文件的链接。请参阅下面的示例响应。这意味着您需要另一个活动来实际获取文件。

    【讨论】:

    • 嗨@nam,如果这回答了您的问题,请将其标记为正确答案。
    • 您的建议有效(谢谢)。但我无法添加另一个实际获取文件的活动。我已经为它创建了另一个帖子here
    猜你喜欢
    • 1970-01-01
    • 2019-12-01
    • 2023-01-04
    • 2021-11-15
    • 2021-05-08
    • 1970-01-01
    • 2022-09-29
    • 1970-01-01
    • 2021-12-06
    相关资源
    最近更新 更多