现在我有<a href="...">FILE</a>
允许用户下载文件。我不喜欢这样,因为它迫使他们离开当前页面并且当他们想要回去时必须重新加载它(这需要几秒钟)
让用户下载文件的最简单方法是什么?
答案 0 :(得分:5)
让服务器为相关资源发送Content-Disposition: attachment
标头。然后将它呈现给用户(如果他们有一个理智的浏览器)作为“保存”的文件,而不是作为新页面。
对于某些类型的资源,这可能意味着您在PHP中编写代理脚本,或者您可以配置您的Web服务器来执行此操作。
答案 1 :(得分:1)
使用此方法:
<a href="..." target="_blank">FILE</a>
答案 2 :(得分:0)
在没有服务器端解决方案的情况下强制下载的最可靠方法是压缩文件,然后链接到此存档。如果使用ZIP文件没有任何限制,我遇到的几乎每个Web浏览器都会将文件下载到用户的计算机上。
如果你没有服务器端支持,我只是假设因为你问的是HTML而不是脚本语言,你不能总是从浏览器下载文件。这是因为并非每个Web浏览器都配置相同,并且用户计算机上的默认应用程序也可能设置为您无法预测的内容。
此外,您应该使用@ craig1231建议的链接方法,以便在新窗口中发生文件下载请求。
<a href="..." target="_blank">FILE</a>
这将减少刷新页面所需的部分时间,在大多数情况下,当Web浏览器遇到ZIP文件作为窗口的URL时,它将在文件开始下载后关闭窗口。