首页 > 解决方案 > 将新块上传到现有 Azure BlockBlob 时,块 ID 的最大长度是多少

问题描述

在处理 Azure Blob 存储时,每个 blob 数据都有元数据,没有办法将元数据添加到每个块。

在我们的例子中,有一些数据我们希望将其与实际块内容分开,但在创建时仍附加到每个块,以便在整个 blob 内容处于其原始格式的同时,从每个块的元数据中,我们可以跟踪每次传输的历史以进行进一步的遥测。

由于在调用 Microsoft.WindowsAzure.Storage.Blob.PutBlockAsync 时没有可用的元数据属性,因此我们想到的解决方法是使用元数据的 Json 表示作为块 Id。

一个问题是,我们不知道块 ID 的最大允许长度。我的问题是,是否有已知的块 ID 长度限制?

请指教。

标签: azureazure-blob-storageblock

解决方案


一个问题是,我们不知道块 ID 的最大允许长度。我的问题是,是否有已知的块 ID 长度限制?

块 ID 的最大长度可以是 64 字节。请注意,块 id 必须是 bas64 编码的。

从此link

标识块的有效 Base64 字符串值。在编码之前,字符串的大小必须小于或等于 64 字节

对于给定的 blob,为 blockid 参数指定的值的长度必须与每个块的大小相同。

请注意,Base64 字符串必须是 URL 编码的。


推荐阅读