[英]force save dialog for a video link
我想为视频创建一个下载链接。 单击链接时如何强制打开另存为对话框。
<a href="#" onclick="downloadVideo()">Download Video</a>
正如 Pekka 暗示的那样,您通过发送额外的 HTTP header 来强制从正常的 HTML 链接下载文件。 这意味着您可能需要更改 web 服务器的配置才能使其正常工作。
通常,单击链接不会返回Content-Disposition
header; 这就是您如何获得“保存文件...”对话框的设置。 响应标头看起来有点像:
HTTP/1.1 200 OK
Date: Sun, 21 Aug 2011 11:45:59 GMT
Server: Apache/2.2.14 (Ubuntu)
Content-Disposition: attachment; filename=video.m4v;
在不知道您的应用程序或站点的内部工作原理的情况下,我暂时建议(为了关闭 JavaScript 的用户的利益)如果可能的话,您不要为此使用 JS。
最好的办法是更改 web 服务器的配置。 使用Apache ,您可以执行以下操作:
<FilesMatch "\.m4v$">
<IfModule mod_headers.c>
Header set Content-Disposition "attachment"
</IfModule>
</FilesMatch>
...这将使所有 M4V 文件显示“保存文件...”对话框。 或者,如果您的应用程序是用PHP编写的,您可以这样做:
header('Content-Disposition: attachment; filename="video.m4v"');
这个页面有一点JavaScript (可能是JScript ?)你可以在 Internet Explorer 中使用,但不能在任何其他浏览器中使用:
<a href="javascript:void(0);" onclick="document.execCommand('SaveAs',true,'video.m4v');">Download video</a>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.