gpt4 book ai didi

AzureBlob存储: Calculated MD5 does not match existing property

转载 作者:行者123 更新时间:2023-12-03 00:33:18 25 4
gpt4 key购买 nike

给出以下代码和输出,每次我尝试下载该文件时都会遇到相同的异常。

如果我在没有 md5 验证的情况下下载它并检查内容,则该文件没有任何问题,因此我怀疑 blob 元数据上的 md5 属性值不正确。

我首先想弄清楚它是如何变得无效的。上传文件时设置此属性的不是azure blob存储内部吗?

我不想将DisableContentMD5Validation 作为解决方案。

(ps.我首先使用Couldberry Explorer上传文件)

     static void Main(string[] args)
{
{
try
{

var client = account.CreateCloudBlobClient();
var container = client.GetContainerReference("algorithms");
var blob = container.GetBlockBlobReference("SInnovations.Algorithms/SInnovations.Algorithms.FootprintFinder.1.0.0-pre-20140430.zip");
blob.FetchAttributes();
Console.WriteLine(blob.Properties.ContentMD5);

blob.DownloadToFile("c:\\dev\\test.zip", System.IO.FileMode.Create);

}
catch (StorageException ex)
{
if (ex.Message == "Calculated MD5 does not match existing property")
{
Console.WriteLine("Calculated MD5 does not match existing property");
}

}
}
{


var client = account.CreateCloudBlobClient();
var container = client.GetContainerReference("algorithms");
var blob = container.GetBlockBlobReference("SInnovations.Algorithms/SInnovations.Algorithms.FootprintFinder.1.0.0-pre-20140430.zip");
blob.FetchAttributes();
Console.WriteLine(blob.Properties.ContentMD5);

blob.DownloadToFile("c:\\dev\\test.zip", System.IO.FileMode.Create,null,new BlobRequestOptions()
{
DisableContentMD5Validation = true,
});
using (var md5 = MD5.Create())
{
using (var stream = File.OpenRead("c:\\dev\\test.zip"))
{
Console.WriteLine(md5.ComputeHash(stream));
}
}

}
}
}

给出这个输出

RH4EqqbthSm24KPgZ2VSGQ==
Calculated MD5 does not match existing property
RH4EqqbthSm24KPgZ2VSGQ==
System.Byte[]
Press any key to continue . . .

不好的例子,本地文件md5实际上是,Hv+nQRNCPQnvy4WU9+qaQA==。

结论是该属性在某些时候设置错误。

解决方案。下载并计算 md5 并更新 blob 的属性值。

最佳答案

对于通过 CloudBerry Storage Explorer (2.4.0.163) 上传的文件,我也遇到了同样的问题。我通过 Azure 门户和 Azure 存储资源管理器 ( http://storageexplorer.com/ ) 上传了相同的文件,但没有遇到相同的问题(内容损坏或 md5 不匹配)。

关于AzureBlob存储: Calculated MD5 does not match existing property,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24862113/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com