Cra*_* Mc 12 browser streaming google-chrome download
在我的网站上我流用户mp4内容.我也允许用户下载.但是在Chrome中,它似乎会自动在内部播放器中播放文件而不是下载文件.
如何强制浏览器下载文件.
关心并感谢克雷格
Sri*_*han 12
您必须使用HTTP标头" Content-Disposition "和" Content-Type:application/force-download ",它将强制浏览器下载内容而不是在那里显示内容.
根据您所使用的服务器端语言,实现方式会有所不同.的情况下
PHP:
header('Content-Disposition: attachment; filename="'.$nameOfFile.'"');
Run Code Online (Sandbox Code Playgroud)
会为你做的工作.
当然,为了简化和概括所有文件,您可能需要编写一个方法,将链接路由到可下载的内容.
您可以在html中显示的链接如下:
<a href="http://yoursite.com/downloadFile?id=1234">Click here to Download Hello.mp4</a>
Run Code Online (Sandbox Code Playgroud)
在服务器端,您需要一个在/ downloadFile上调用的脚本(取决于您的路由),通过id获取文件并将其作为附件发送给用户.
<?php
$fileId = $_POST['id'];
// so for url http://yoursite.com/downloadFile?id=1234 will download file
// /pathToVideoFolder/1234.mp4
$filePath = "/pathToVideoFolder/".$fileId."mp4";
$fileName = $fileId."mp4"; //or a name from database like getFilenameForID($id)
//Assume that $filename and $filePath are correclty set.
header('Content-Description: File Transfer');
header('Content-Disposition: attachment; filename="'.$filename.'"');
header('Content-Type: application/force-download');
readfile($filePath);
Run Code Online (Sandbox Code Playgroud)
这里'Content-Type:application/force-download'将强制浏览器显示下载选项,无论mime-type的默认设置是什么.
无论您的服务器端技术是什么,要注意的标题是:
'Content-Description: File Transfer'
'Content-Type: application/force-download'
'Content-Disposition: attachment; filename="myfile.mp4"
Run Code Online (Sandbox Code Playgroud)
听起来你正在使用直接href到mp4.如果您在网站上使用任何服务器端语言(ieasp.net,php等)语言,则可以强制下载.在asp或.net中,您可以将HttpHandlers与"content-disposition","attachment; filename = fname.ext"一起使用,或者在MVC中返回File()ActionResult.如果您可以使用任何服务器端代码,请告诉我,我可以提供一些代码.
或者你可以试试html5下载属性:https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a? redlocale = en-US & redctsctsgg = HTML%2FElement%2Fa#attr-download
即 <a href="http://www.w3schools.com/images/myw3schoolsimage.jpg" download="downloadfilename">
或者,尝试javascript/jQuery.这是一个插件:http://johnculviner.com/jquery-file-download-plugin-for-ajax-like-feature-rich-file-downloads/