【问题标题】:How to get public URL of Azure Files file?如何获取 Azure Files 文件的公共 URL?
【发布时间】:2016-03-29 09:05:17
【问题描述】:

我正在使用 Azure Files 为我的 Web 应用程序存储文件,我之前提到过 here

我目前正在处理目录中的文件/子目录,并输出一个导航表,以便用户可以导航到子目录,并最终获得所述文件。我正在使用this Azure Documentation article 的“以编程方式访问文件共享”部分中描述的方法来执行此操作。

我的问题很简单,我怎么能从我的 Web App 中,即 在 Azure 应用服务中运行,提供 公共 URL 是用户 可以下载/查看文件吗?

请注意,我希望文件自动下载,因为大多数文件都是.PDF,因此可以在浏览器中预览。

【问题讨论】:

    标签: asp.net-mvc azure azure-storage azure-web-app-service azure-storage-files


    【解决方案1】:

    我的问题很简单,我怎么能从我的 Web App 中,即 在 Azure 应用服务中运行,提供用户可以使用的公共 URL 下载/查看文件?

    一种可能的解决方案是在至少具有Read 权限的文件上创建Shared Access Signature (SAS) 并使用该SAS URL。根据文件的内容类型,文件的内容将在浏览器中内嵌显示或提示用户下载文件。如果您想强制下载,您始终可以覆盖 SAS 中的 Content-Disposition 响应标头。

    【讨论】:

    • 谢谢,我已经研究过了,这似乎是一个完美的解决方案,是时候开始工作了!
    【解决方案2】:

    使用共享访问签名 (SAS) 可能是一种解决方案,但在给定的场景中它可能是一种矫枉过正的做法。

    在提供的场景中,具有公共访问权限的 Blob 存储是最实用的文件存储方式。来自文档:

    ... 您可以指定容器及其 ​​blob 或特定 blob 可用于公共访问。当您指示容器或 blob 是公共的时,任何人都可以匿名读取它;不需要身份验证。公共容器和 blob 对于公开网站上托管的媒体和文档等资源非常有用。为了减少全球受众的网络延迟,您可以使用 Azure CDN 缓存网站使用的 blob 数据。

    https://azure.microsoft.com/en-us/documentation/articles/storage-introduction/

    要从 Azure 门户设置容器权限,请按以下步骤操作:

    1. 导航到您的存储帐户的仪表板。
    2. 从列表中选择容器名称。单击名称会显示所选容器中的 blob
    3. 从工具栏中选择访问策略。
    4. 在访问类型字段中,选择“Blob”

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-08
      • 2019-10-13
      • 1970-01-01
      • 1970-01-01
      • 2014-01-18
      相关资源
      最近更新 更多