0

我正在编写一个备份脚本,它将在我们的 Windows Azure blob 存储中的特定 blob 容器中提取每个文件的完整副本。这些文件不是我上传的,我只是在写一个遍历blob存储并下载文件的脚本。为了加快这个过程并跳过不必要的下载,我想在下载文件之前请求文件的 MD5,并将它们与已经本地文件进行比较。

我的问题:我在任何地方都找不到详细说明如何执行此操作的文档。我很确定 API 支持它,我到处寻找文档并回答与其他语言相关的问题,但不适用于 Node.js Azure SDK。

我的问题:在下载之前,是否可以通过 Azure Node.js SDK 为远程文件 blob 请求 MD5,如果可以,如何?它比下载文件更快吗?

4

1 回答 1

1

MD5获得 blob 的哈希当然是可能的。列出 blob 时,您将在 blob 的属性中获得 MD5。请参阅下面的示例代码:

var azure = require('azure');
var blobService = azure.createBlobService("accountname", "accountkey");

blobService.listBlobs("containername", function(error, blobs){
    if(!error){
        for(var index in blobs){
            console.log(blobs[index].name );
            console.log(blobs[index].properties['content-md5'] );
        }
    }
});

显然,问题是 blob 应该设置此属性。如果未设置此属性,则返回一个空字符串。

于 2013-09-05T13:46:34.850 回答