我正在构建一个Web应用程序,让用户通过单击链接直接下载cdn上的文件。链接应直接指向cdn url,以便最大限度地减少服务器上的负载。
当用户点击链接下载文件而浏览器根本没有显示文件内容时,我们希望浏览器弹出“保存为”对话框。所以页面不应该重新加载。但是,我们无权设置从cdn发回的HTTP标头。是否仍然可以使用客户端代码弹出“保存为”对话框以供下载?
答案 0 :(得分:1)
是否仍然可以使用客户端代码弹出“保存为”对话框以供下载?
没有。除非文件类型是浏览器无法理解的内容(或HTTP标头Content-Disposition
是“附件”),否则不会出现“另存为”对话框。
JavaScript无法更改此行为。
答案 1 :(得分:0)
行为由Content-Disposition标头控制,除非浏览器根本不理解如何显示返回类型的内容。如果无法将Content-Disposition标头更改为attachment
,则无法强制浏览器下载文件而不是渲染文件。这必须在服务器端完成。