有没有一种方法可以强制附件在浏览器中查看或下载?

时间:2019-02-06 06:15:15

标签: c# jquery html download attachment

在我们的跨浏览器Web应用程序中,客户端可以上传不同的文件类型(.pdf,.eml,.jpg等)。

客户端已要求以标准化方式查看这些附件,方法是在浏览器中打开附件或下载附件。

我已经查看过content-disposition标头来强制下载文档,但这是否可以在所有浏览器中使用?那么默认的浏览器应用程序呢,他们会不会尝试直接在浏览器中打开文件?

2 个答案:

答案 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>