我在 Azure 中下载 block blob 时偶尔会遇到异常。 异常消息如下:
StorageException: Blob data corrupted. Incorrect number of bytes received
我的问题是:
- 这是 Azure 服务器端的问题还是由于 我的客户端代码中存在错误?
- 有人以前看过这个并且有任何想法吗 修复应该是什么?
关于这个问题的更多信息 - 似乎如果我稍后尝试读取相同的 BlockBlob,它会使用相同的确切代码下载它。
谢谢, 瑞
最佳答案
此异常表示传输过程中存在数据完整性问题。检查ErrorCode , ExtendedErrorInformation和 StatusCode属性以获取更多详细信息。
Windows Azure Blob MD5 Overview解释如何应用可选的 MD5 检查来确保数据完整性。这仅适用于 HTTP 连接;由于 HTTPS 提供传输层安全性,因此通过 HTTPS 连接时不需要额外的 MD5 检查,因为它是多余的。
处理此问题的最合适方法可能是通过 transient 故障处理。 Enterprise Library 6提供Transient Fault Handling Application Block可用于实现容错。有关更多信息,请参阅Dealing with Windows Azure Storage transient faults .
关于c# - StorageException : Blob data corrupted. 收到的字节数不正确 - 这是我的代码中的错误还是 azure 服务器问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17883950/