如何在 Azure Blob 放置请求期间附加 Blob 索引标签?

问题描述

我按照 azure 文档 https://docs.microsoft.com/en-us/rest/api/storageservices/put-blob 在 azure blob 中创建对象期间添加标签。它说,我们必须在请求标头中添加“x-ms-tags”。我附加到 PUT 请求的标头是,

headers: {
  'Content-Type': file.type,'x-ms-blob-type': 'BlockBlob','x-ms-tags': 'tag1=value1'
}

但是这些标签并没有被添加到实际的 blob 中。我在这里错过了什么?

也在文档中,它说“x-ms-tags”是“在 2019-12-12 及更新版本中受支持。”。他们在这里提到的是哪个版本?

编辑 1:

上传文件代码

uploadToAzure = function (public_url,sas_token,file) {
  return $http({
    method: 'PUT',url: public_url + '?' + sas_token,ignoreLoadingBar: true,data: file,headers: {
      'Content-Type': file.type,'x-ms-tags': 'tag1=value1'
    }
  })
  .then(function (response) {
    return response;
  },function (error) {
    console.error("error",error)
    return error;
  });
}

编辑 2:

编辑2: 生成令牌的后端代码

创业板:

gem 'azure-storage-blob'

azure_blob_storage_initializer.rb

AZURE_SAS_TOKEN_GENERATOR = Azure::Storage::Common::Core::Auth::SharedAccessSignature.new(
  ENV['AZURE_BLOB_STORAGE_ACCOUNT_NAME'],ENV['AZURE_BLOB_STORAGE_ACCESS_KEY']
)

生成令牌登录

SAS_TOKEN_OPTIONS = { service: 'b',resource: 'b' }.freeze
sas_token = AZURE_SAS_TOKEN_GENERATOR.generate_service_sas_token(blob_path,SAS_TOKEN_OPTIONS.merge(permissions: 'w'))

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)