在Azure Blob存储上强制下载IE9的文件
本文关键字:下载 IE9 文件 Azure Blob 存储 | 更新日期: 2023-09-27 18:15:47
我正在尝试使用Azure Blob存储作为使用共享访问签名的安全文件下载的位置。一切都工作得很好,但我遇到的问题是,我试图让用户从浏览器保存文件,我有除了IE9工作的所有浏览器。
回顾这个问题,
什么内容类型强制下载文本响应?
当我可以控制所有的标题时,这工作得很好,但是在Azure Blob存储中,我已经将Content-Type设置为application/octet-stream,这允许除了IE以外的所有浏览器要求用户保存文件,IE只是打开文件。似乎已知的文件类型将被打开(例如。jpg,。wmv等…)。
在Azure中,我没有办法设置
Content-Disposition: attachment;filename="My Text File.txt"
是否有一种方法,使用Azure Blob存储,使用IE直接从Azure Blob存储下载任何文件?
我认为没有办法在Windows Azure blob存储中设置Content-Disposition
标头。
现在可以右键单击资源属性
如果您正在使用@azure/storage-blob
包来上传带有SAS的blobs,您可以通过设置如下所示的内容处置来强制下载文件。
在下面的例子中,一个*.png图像文件被下载时链接到,而不是浏览器默认的在新选项卡中打开:
blockBlobClient.upload(file.content, file.size, {
blobHTTPHeaders: {
blobContentType: "image/png",
blobContentDisposition: "attachment"
}
});