【问题标题】:Uploading Data(csv file) using Azure Functions(Nodejs) To Azure DataLakeGen2使用 Azure Functions(Nodejs) 将数据(csv 文件)上传到 Azure DataLakeGen2
【发布时间】:2020-01-11 20:07:36
【问题描述】:

我目前正在尝试使用带有 NodeJs 的 Azure Function 将 csv 文件发送到 Azure Data Lake gen2,但无法执行相同操作,任何有关相同的建议都会非常有帮助。 谢谢。

我尝试使用 Blob 存储 API 使用 ADLS gen2 中存在的 blob 存储凭据,但出现错误。

【问题讨论】:

    标签: node.js azure-functions azure-data-lake azure-blob-storage


    【解决方案1】:

    目前这无法通过 SDK 实现。请查看known issue

    禁用 Blob 存储 API 以防止可能出现的功能可操作性问题,因为 Blob 存储 API 尚不能与 Azure Data Lake Gen2 API 互操作。

    在功能表中,您可以找到有关 Data Lake Storage Gen2 存储帐户的 API 的信息:

    Data Lake Storage 上的多协议访问目前处于公共预览阶段。此预览版使您能够将 .NET、Java、Python SDK 中的 Blob API 与具有分层命名空间的帐户一起使用。 SDK 尚不包含使您能够与目录交互或设置访问控制列表 (ACL) 的 API。要执行这些功能,您可以使用 Data Lake Storage Gen2 REST API。

    所以如果你想实现它,你必须使用 REST API:Azure Data Lake Store REST API

    【讨论】:

    • 感谢您的回复,是的,我们尝试使用 ADLS REST api,但遇到了身份验证问题,现在我们将尝试多协议访问(预览)模式。一旦我们清楚该方法,将更新此线程.
    • @inr,azure rest api认证需要token,可以参考这个blobinnerdot.com/azure/…
    • @GeorgeChen 面临同样的问题,目前无法访问 Azure Active Directory 凭据。我们可以将 SAS 令牌用于身份验证标头吗?我试图生成这样的 Authentication 标头:Authorization="SharedKey AccountName:sig (keyValueFromSAStoken) 我已经参考了来自 here 的 Authorization 标头
    • 是的,data Lake gen2 支持 sas 令牌。你可以在这里查看。github.com/MicrosoftDocs/azure-docs/blob/master/articles/…
    • 是的,我已经尝试使用 SAS 令牌,但无法完美地形成签名,整个 SAS 令牌和 SAS 令牌的 sigKeyValue 都不允许我对 REST 调用进行身份验证。这是Authentication header的官方格式Authorization="[SharedKey|SharedKeyLite] <AccountName>:<Signature>"这里我无法正确填写这个Signature变量。
    猜你喜欢
    • 2022-01-26
    • 1970-01-01
    • 2020-09-04
    • 2022-08-18
    • 2020-02-17
    • 2021-07-17
    • 2019-12-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多