有效的 Azure Blob 元数据标识符

问题描述 投票:0回答:2

我一直在尝试在存储在 Azure Blob 上的 .mp4 视频上添加元数据。我想添加 opengraph 标签,当我尝试输入它们时,我收到一条消息:“名称:'og:type' 应该是有效的 C# 标识符。”我不是 C# 开发人员,也无法找到显示元标记的有效 C# 标识符的文档。任何帮助将不胜感激,谢谢!

编辑:我一定误解了元数据部分的目的,因为我认为它会将 HTML 元标记添加到视频页面上的文档中。你知道这是否可能吗?例如,我想在社交媒体网站上分享此视频的链接,并希望尝试让此视频能够内嵌播放或在分享视频链接时至少有一个图像预览

c# azure azure-blob-storage metadata facebook-opengraph
2个回答
1
投票

仅当您提供 有效输入时,将元数据添加到现有 Azure blob 才会起作用。

注意

从 2009-09-19 版本开始,元数据名称必须遵守 C# 标识符的命名规则

正如@Stefan Wuebbe提到的,您可以通过以下this文档找到C#命名规则和约定:

C# 标识符名称 |微软文档

我在我的环境中进行了尝试,如果在元数据名称中间使用冒号(:),则会出现相同的错误。

要解决该错误,请使用 下划线 (_) 而不是 冒号 (:),如下所示:

欲了解更多详情,请参考以下链接:

设置和检索 Blob 服务资源的属性和元数据 (REST API) - Azure 存储 |微软文档


0
投票

让我在 AWS DataSync 复制到 MS Azure Blob Storage 的上下文中回答,以便在 StackOverflow 上查找,因为我得到了由 DataSync API 返回的完全相同的错误。它可能只是从 Azure API 本身传递该消息。

在上面的用例中,我得到:

[错误] 无法传输文件 /Subsubfolder/README.txt:Azure Blob 用户元数据密钥必须是 CSharp 标识符

因为元数据不是以 x-amz- 开头,或者没有单个单词作为该标头前缀的后缀。 示例:

  • x-amz-singleword 已接受
  • x-amz-由连字符组成的单词被拒绝

参考:https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingMetadata.html

© www.soinside.com 2019 - 2024. All rights reserved.