为了账号安全,请及时绑定邮箱和手机立即绑定

强制打开“另存为…”弹出打开文本链接,单击HTML中的PDF格式

强制打开“另存为…”弹出打开文本链接,单击HTML中的PDF格式

饮歌长啸 2019-07-10 15:56:57
强制打开“另存为…”弹出打开文本链接,单击HTML中的PDF格式我有一些大的PDF目录在我的网站,我需要链接这些下载。当我在google上搜索时,我发现下面有这样一个东西。它应该打开“但作为.。“在链接点击弹出.。 <head>     <meta name="content-disposition" content="inline; filename=filename.pdf">     ...但是它不起作用:/当我按下面的方式链接到一个文件时,它只是链接到文件并试图打开该文件。    <a href="filename.pdf" title="Filie Name">File name</a>最新情况(根据以下答复):正如我所看到的,没有100%可靠的跨浏览器解决方案。最好的方法可能是使用下面列出的Web服务之一,并提供一个下载链接.http://box.net/http://droplr.com/http://getcloudapp.com/
查看完整描述

3 回答

?
红颜莎娜

TA贡献1842条经验 获得超12个赞

从答案到在单击链接后强制浏览器保存文件:

<a href="path/to/file" download>Click here to download</a>


查看完整回答
反对 回复 2019-07-10
?
ITMISS

TA贡献1871条经验 获得超8个赞

<a href="file link" download target="_blank">Click here to download</a>

它适用于我在Firefox和Chrome中。


查看完整回答
反对 回复 2019-07-10
?
梦里花落0921

TA贡献1772条经验 获得超6个赞

元标记不是实现这一结果的可靠方法。通常,您甚至不应该这样做-应该由用户/用户代理来决定如何处理所提供的内容。如果用户愿意的话,总是可以强迫他们的浏览器下载文件。


如果仍然希望强制浏览器下载文件,请直接修改HTTP头。下面是一个PHP代码示例:


$path = "path/to/file.pdf";

$filename = "file.pdf";

header('Content-Transfer-Encoding: binary');  // For Gecko browsers mainly

header('Last-Modified: ' . gmdate('D, d M Y H:i:s', filemtime($path)) . ' GMT');

header('Accept-Ranges: bytes');  // Allow support for download resume

header('Content-Length: ' . filesize($path));  // File size

header('Content-Encoding: none');

header('Content-Type: application/pdf');  // Change the mime type if the file is not PDF

header('Content-Disposition: attachment; filename=' . $filename);  // Make the browser display the Save As dialog

readfile($path);  // This is necessary in order to get it to actually download the file, otherwise it will be 0Kb

请注意,这只是HTTP协议的一个扩展;有些浏览器可能会忽略它。


查看完整回答
反对 回复 2019-07-10
  • 3 回答
  • 0 关注
  • 760 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信