我有使用以下结构的文件组:
RandomFolderName1 [File1.jpg,File2.jpg,File3.jpg ...]
RandomFolderName2 [File1.jpg,File2.jpg,File3.jpg ...]
我想知道在Blob存储中存储它的麻烦方法是什么.
我应该为每个文件名使用GUID.jpg并管理数据库中的文件夹结构
我应该使用FolderName + FileName.jpg,但是我必须再次管理DB中的文件夹结构
我应该使用Container作为文件夹而里面有File1 .jpg,File2.jpg,File3.jpg ...
我应该将整个ForderName存储为zip并且包含所有文件
有没有其他方法可以在Blob存储中定义文件夹结构?
编辑:将基于文件夹访问文件
我已将VS 2012中的服务器资源管理器连接到我的公共blob容器.
在VS 2010中有一个用于上传文件的按钮,但在VS 2012中似乎没有.
我是盲目的,还是功能实际上缺失了?
虽然我在这里,有没有人知道"公共容器"和"公共blob"之间的区别,在天蓝色门户网站的容器设置下?我将我的容器设置为"公共blob".
azure server-explorer azure-storage-blobs visual-studio-2012
如何在我的 blob 容器中创建一个空文本文件(或带有一些消息的文本)
var destBlob = blobClient.GetBlobReference(myblob);
Run Code Online (Sandbox Code Playgroud)
类似于 https://myxyzstorage.blob.core.windows.net/mycontainer/newfolder/newTextfile.txt
我有这样的情况,我想发送一个文件的链接,3个月访问一个用户,并发送相同的文件,1个月访问另一个用户.因此,我想为文件创建两个不同的SAS.
这是支持还是每次我收到SAS来提交它都会覆盖以前的?
我正在使用以下程序将大文件上传到azure blob存储.上传小于500KB的小文件时,程序运行正常,否则我在以下行中收到错误:
blob.PutBlock(blockIdBase64,stream,null);
as" Microsoft.WindowsAzure.Storage.dll中发生类型'Microsoft.WindowsAzure.Storage.StorageException'的未处理异常附加信息:远程服务器返回错误:(400)错误请求. "
没有关于异常的细节,所以我不确定这个问题是什么.关于以下程序中可能出现的错误,是否有任何建议:
class Program
{
static void Main(string[] args)
{
string accountName = "newstg";
string accountKey = "fFB86xx5jbCj1A3dC41HtuIZwvDwLnXg==";
// list of all uploaded block ids. need for commiting them at the end
var blockIdList = new List<string>();
StorageCredentials creds = new StorageCredentials(accountName, accountKey);
CloudStorageAccount storageAccount = new CloudStorageAccount(creds, useHttps: true);
CloudBlobClient client = storageAccount.CreateCloudBlobClient();
?
?
CloudBlobContainer sampleContainer = client.GetContainerReference("newcontainer2");
string fileName = @"C:\sample.pptx";
CloudBlockBlob blob = sampleContainer.GetBlockBlobReference("APictureFile6");
using (var file = new FileStream(fileName, FileMode.Open, …Run Code Online (Sandbox Code Playgroud) 根据本教程:如何使用iOS中的Blob存储,我应该使用Azure命令行界面(Azure CLI)命令:
$ azure存储帐户连接字符串显示"mystorage"
显示我的存储帐户的连接字符串,但我收到此错误:
info:执行命令storage account connectionstring show +获取存储帐户密钥错误:找不到存储帐户'mystorage'.info:
错误信息已记录到/Users/user/.azure/azure.err错误:storage account connectionstring show命令失败
我的存储是使用新的azure门户创建的.我注意到如果我使用经典门户(旧版)创建存储,该命令将运行正常,并返回连接字符串.
这是另一个可能与此有关的奇怪行为.我使用新门户创建的存储未显示在经典门户中,但我在类中创建的存储显示在新门户中.这是怎么回事?如何为存储运行该命令!?
与文档azure doc或msdn一样,您必须调用FetchAttributesAsync()以填充CloudBlockBlob的元数据.
我注意到,当我打电话时,元数据也会被填充,DownloadTextAsync()并且在我打电话时写入UploadTextAsync().这是否安全使用,因为它在将来版本的存储sdk中不会改变?我无法找到任何确认该行为的文档.
样品:
var blob = container.GetBlockBlobReference("testblob");
blob.Metadata["testdata"] = "set";
await blob.UploadTextAsync("content");
blob.Metadata["notset"] = "set";
blob = container.GetBlockBlobReference("testblob");
var content = await blob.DownloadTextAsync();
// here content["testdata"] is set and content["notset"] is null
Run Code Online (Sandbox Code Playgroud)
谢谢你告诉我这件事!
我是azure的新手,正在为我的应用程序使用一个存储帐户。基本上我在azure blob存储中存储了json文件。
我想从Node JS应用程序中的这些文件中读取数据,并对数据进行一些过滤,最终将其作为受保护的REST端点,以将UI / Client中的数据作为HTTP响应进行查看。
我浏览了有关Blob存储上不同操作的文档,该文档公开为NODE SDK,我们可以在下面的链接中找到它们,
https://github.com/Azure/azure-storage-node
但是我有一个问题是“如何读取json文件”。我看到一种方法getBlobToStream。这是否会在回调中为我提供json内容,以便我可以对数据做进一步处理并将其作为响应发送给请求的客户端。
请有人解释如何更好地执行此操作,或者这是我们唯一的选择。
谢谢您的帮助。
azure azure-storage-blobs node.js azure-node-sdk azure-blob-storage
我在Blob中有图像,我想读取图像尺寸(宽度和高度)
这是我从blob中读取的功能:
private static CloudBlockBlob ReadBlockBlob(string input, IConfigurationRoot config)
{
CloudStorageAccount storageAccount = new CloudStorageAccount(
new Microsoft.WindowsAzure.Storage.Auth.StorageCredentials(config["storageAccountName"], config["storageKeyValue"]), true);
CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();
CloudBlobContainer container = blobClient.GetContainerReference(config["blobContainer"]);
return container.GetBlockBlobReference(input);
}
Run Code Online (Sandbox Code Playgroud)
我在CloudBlobContainer和CloudBlockBlob中都看不到任何有用的元数据。
知道如何从Blob获取图像尺寸吗?
谢谢
我想创建一个Azure函数,该函数在上次修改超过30天时会从azure blob存储中删除文件。任何人都可以提供帮助或提供文档吗?