gpt4 book ai didi

c++ - 使用 Azure C++ SDK 设置元数据

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:11:21 25 4
gpt4 key购买 nike

我尝试使用以下代码在 Azure Blob 存储中的文件上设置元数据:

bool AzureUploader::uploadFile(const boost::filesystem::path& filePath)
{
auto leaf = filePath.filename();
azure::storage::cloud_blob_container container =
blob_client.get_container_reference(U("my_container"));
container.create_if_not_exists();
azure::storage::cloud_block_blob blockBlob =
container.get_block_blob_reference(leaf.wstring());
auto filepathStr = filePath.wstring();
blockBlob.upload_from_file(filepathStr);
blockBlob.download_attributes();
azure::storage::cloud_metadata md = blockBlob.metadata();
md[U("_timestamp")] = U("today");
blockBlob.upload_metadata();
}

但是,当我在 Azure 存储资源管理器中查看该文件时,没有设置元数据。我查了一下,这似乎确实是设置元数据的方法,但无论出于何种原因它都不起作用。

任何想法将不胜感激!

最佳答案

对于遇到此问题的任何人来说,答案是如果您要更新它,则需要获得对 cloud_metadata引用:

azure::storage::cloud_metadata& md = blockBlob.metadata();

或者简单地

auto& md = blockBlob.metadata();

然后它就按预期工作了!

关于c++ - 使用 Azure C++ SDK 设置元数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40995685/

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