0
点赞
收藏
分享

微信扫一扫

【Azure 环境】存储在Azure上的文件,使用IE/Edge时自动打开的问题,如何变为下载而非自动打开

问题描述

存储,作为云服务最重要的一部分。当需要从云存储中下载文件时,时常面临一些格式的文件被浏览器自动打开而非下载,那如何来解决这个问题呢?

在Azure中,存储的服务有以下方式:

  • ​​Azure Blob​​:适用于文本和二进制数据的可大规模缩放的对象存储。 还包括通过 Data Lake Storage Gen2 支持大数据分析。
  • ​​Azure 文件​​:适用于云或本地部署的托管文件共享。
  • ​​Azure 队列​​:用于在应用程序组件之间进行可靠的消息传送的消息存储。
  • ​​Azure 表​​:一种 NoSQL 存储,适合用作结构化数据的无架构存储。
  • ​​Azure 磁盘​​:Azure VM 的块级存储卷。

多数情况中,会使用Blob来作为文件存储。所以此处以Blob为例来讨论如何解决文件下载而非打开的问题

 

问题原因

当通过Azure的门户,代码,及​​Azure Storage Explorer​​工具进行上传的文件,如文件为word文档压缩文件,通过URL是可以直接进行下载的,但是TXT文件格式通过URL下载时会被直接打开,是因为文件类型为txt上传后,Content-type是text/plain,这种格式会被浏览器直接解析,不会被以文件形式下载。

 

解决方案

通过修改blob的属性来达到下载的目的。由于门户无法修改,所以需要使用storage explorer来操作(下载地址: ​​https://azure.microsoft.com/zh-cn/features/storage-explorer/​​)

  • 更改文件的ContentTypeapplication/octet-stream
  • 更改文件的ContentDispositionattachment

【Azure 环境】存储在Azure上的文件,使用IE/Edge时自动打开的问题,如何变为下载而非自动打开_Azure Storage

 

 

 

参考资料:

代码修改的方式可见:​​https://docs.azure.cn/zh-cn/storage/blobs/storage-blob-properties-metadata?tabs=dotnet11#set-and-retrieve-properties​​

核心 Azure 存储服务简介: ​​https://docs.azure.cn/zh-cn/storage/common/storage-introduction?toc=%2fstorage%2fblobs%2ftoc.json​​

 

当在复杂的环境中面临问题,格物之道需:浊而静之徐清,安以动之徐生。 云中,恰是如此!



举报

相关推荐

0 条评论