有没有办法获取存储在云上的文件的链接?

时间:2011-10-01 00:09:37

标签: azure cloud azure-storage

我正在为我的项目开发一个云应用程序。我希望提供在云上存储文件并在有效登录后检索这些文件的工具。

我想将实际基于云的文件的链接存储在数据库中。 如果我将使用的云是Microsoft云,有没有办法知道云上文件的链接?

谢谢。

2 个答案:

答案 0 :(得分:3)

创建Azure存储帐户时,需要为其命名。假设您将其命名为 foostorage 。然后,如果您使用以下代码上传blob。

string path = "folder"
string fileName = "file.txt";

CloudBlobContainer container = blobClient.GetContainerReference(path);
var blobContainerPermissions = new BlobContainerPermissions
    {
       PublicAccess = BlobContainerPublicAccessType.Container
    };
container.CreateIfNotExist();
container.SetPermissions(blobContainerPermissions);

 CloudBlob blob = container.GetBlobReference(fileName);     
 blob.UploadText("Text to be saved to blob storage");

 string blobUri = blob.Uri.AbsoluteUri;

然后blobUri会得到值https://foostorage.blob.core.windows.net/folder/file.txt 请注意,访问权限设置为公开。

答案 1 :(得分:2)

以下是一个示例,演示如何在Azure blob存储中存储文件。

它还检索文件的uri,然后在网页上显示它。您可以轻松地执行相同操作并存储在数据库中。

http://soumya.wordpress.com/2010/05/19/azure-simplified-part3-using-azure-blob-storage/

顺便说一下,该教程使用的是名为devfabric的本地开发存储,这就是为什么你在URL中看到本地地址127.0.0.1的原因。如果你有一个真正的azure云帐户,代码将是相同的。

希望有所帮助。