当前位置: 首页 > 知识库问答 >
问题:

从Azure Blob存储下载文件的示例

皇甫乐
2023-03-14

我能够通过Node/Express将文件上传到Azure blob存储,没有任何问题,但我找到了关于如何下载文件的非常少的文档/完整示例。我在教程页面上找到了这个,但是运气不好:

blobSvc.getBlobToStream('mycontainer', 'myblob', fs.createWriteStream('output.txt'), function(error, result, response){
  if(!error){
    // blob retrieved
  }
});

是否有其他人使用node.js/express从Azure blob存储下载文件?您是否使用Azure或其他方法(例如请求)。您能否分享如何从Azure获取文件并将其流式传输到文件夹?

共有2个答案

酆俊远
2023-03-14

我正在创建一个函数,该函数下载一个blob文件夹(虚拟)并返回一个zip文件。最简单的实现是将它们下载为getBloToLocalFile的文件,导出为. zip,最后删除临时文件。这可能不是最好的解决方案,但更容易实现。我知道这不是最有效的方法,但对我来说已经足够好了。

步骤1,获取blob列表:

 blobService.listBlobsSegmentedWithPrefix(
  containerName,
  prefix,
  null,
  { delimiter: "", maxResults: 100 },
  (err, result) => {
    if (err) {
      reject(err);
    } else {
      resolve(result.entries);
    }
  }
);

步骤2,本地保存:

 blobs.map(blob => {
  blobService.getBlobToLocalFile(
    containerName,
    blob.name,
    `${baseDir}/${blob.name}`,
    (err, blob) => {
      if (err) {
        //handle error
      } else {
        count++;
        //do something after they all save
    }
  );
});
庞阳波
2023-03-14

此处提供了有关将 Azure 存储 Blob 与 Node.js的完整教程。本教程提到了getBlobToLocalFile,这听起来像你可能正在寻找的东西。此方法的语法应该与 getBlobToStream 非常相似,但您将提供文件路径,而不是流。

 类似资料:
  • 有没有办法使用java或任何其他语言从maven存储库下载jar文件? 在Maven项目中,当我添加依赖项时,如果本地系统上不存在jar文件,它通常会从远程存储库下载jar文件。 有没有办法做到这一点,而不用像在库中那样使用Maven,或者构造一个URL,然后获取jar?

  • 我在尝试从谷歌云存储下载CSV文件时遇到了一个问题。出于某种原因,它一直以字节而不是可读文本的形式下载文件。当我在Excel中打开下载的CSV时,Excel已经足够智能,可以将其转换为可读文本。我在这里错过了什么?我检查了谷歌的文档,但找不到任何好的信息来完成它们。提前谢谢你! 这是错误:UnicodeDecodeError:“utf-8”编解码器无法解码位置15-16的字节:无效的连续字节

  • 在Android中使用和iOS中使用下载存储文件,是否仍然在暗中使用下载uri方法,即在uri末尾使用不可猜测的标记? 我的要求禁止我们向世界公开这样的URL,所以问题是: null

  • 我有一个处理CSV文件并返回一些分析的应用程序。我的用户将文件存储在GCP云存储桶中,我希望他们能够向我传递一个存储桶URL和一些身份验证令牌/签名URL,然后应用程序将下载文件并根据需要解析它们。 阅读GCP留档时,我遇到了以下gsutil命令: 这正是我所需要的,但是我正在通过一些REST API HTTP请求寻找同样的功能。我肯定有这样的东西存在,但似乎找不到。或者,如果我可以“列出”一个存

  • 我有一个python脚本,它获取已上传到google云存储桶的文件列表,并尝试以字符串形式检索数据。 代码很简单: 我的问题是,我上传的数据存储在bucket中的文件夹中,因此路径类似于: 当google library试图下载文件时,它会以GET请求的形式获取该文件,该请求将上述路径转换为: 有没有办法阻止这种情况发生/通过这种方式下载文件?干杯

  • 我是Google Cloud Platform的新手。我已经在datalab上训练了我的模型,并将模型文件夹保存在云存储中。我可以通过右键单击文件将桶中的现有文件下载到本地计算机-