在我们的跨浏览器Web应用程序中,客户端可以上传不同的文件类型(.pdf,.eml,.jpg等)。
客户端已要求以标准化方式查看这些附件,方法是在浏览器中打开附件或下载附件。
我已经查看过content-disposition
标头来强制下载文档,但这是否可以在所有浏览器中使用?那么默认的浏览器应用程序呢,他们会不会尝试直接在浏览器中打开文件?
答案 0 :(得分:1)
根据https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Disposition#Browser_compatibility的内容处置响应标头与所有浏览器兼容。因此,如果您需要强制下载,请使用Content-Disposition:附件(并且该文件将始终被下载)。建议还指定文件名,并可能指定内容类型:
Content-Disposition: attachment; filename="filename.jpg"
Content-Type: image/jpg
如果您跳过标题,或者只是使用content-disposition:inline,那么浏览器将尝试内联打开文件。
答案 1 :(得分:0)
在这种情况下,我使用标记上的download属性。
<a href='./download-file.pdf' download='Name of File for user'>Click me to download</a>