创建音乐或视频的下载链接

Yoh*_* AI 9 html browser audio video href

我有带视频和音频文件的html文件.我想使用标签href链接文件,如mp3或mp4并下载该文件.我的视频和音频文件与我的html文件存储在同一个文件夹中.

我试过这段代码:

<a href="music/hermin.mp3" target="_blank">download</a>
Run Code Online (Sandbox Code Playgroud)

但是没有下载我的文件,只需在中心打开一个带有播放暂停控件的新选项卡.

从这个问题我得到添加"下载"到我的href标签,但它是为现代浏览器.旧浏览器怎么样?

我如何在html文件中为我的视频/音频创建下载链接并支持所有浏览器(不仅适用于现代浏览器)?



提前谢谢,抱歉我的英语不好.

Emi*_*vac 31

你可以试试这个.我试过了,它对我有用.

<a href="link/to/your/download/file" download> Download link </a>
Run Code Online (Sandbox Code Playgroud)

  • 几乎所有浏览器都支持此属性,但请注意 iOS Safari 和 IE 不支持。请参阅此页面以获取最新支持:https://caniuse.com/#feat=download (2认同)
  • 如果文件来自另一个域,则不适用于 Firefox。/sf/ask/2131097531/ (2认同)
  • 如果文件来自其他域,则不适用于 Chrome (2认同)

ELa*_*unt 9

这取决于您的浏览器设置和插件,但是如果您使用的是php,则可以使用脚本来下载这样的文件:

<?php   
if (isset($_GET['file'])) { 
    $file = $_GET['file'] ;
        if (file_exists($file) && is_readable($file) && preg_match('/\.mp3$/',$file))  { 
            header('Content-type: application/mp3');  
            header("Content-Disposition: attachment; filename=\"$file\"");   
            readfile($file); 
        } 
    } else { 
    header("HTTP/1.0 404 Not Found"); 
    echo "<h1>Error 404: File Not Found: <br /><em>$file</em></h1>"; 
} 
?>
Run Code Online (Sandbox Code Playgroud)

将其保存为download.php

然后创建一个像这样的链接

<html>
<body>
<a href="download.php?file=test.mp3">download</a>
</body>    
</html>
Run Code Online (Sandbox Code Playgroud)

它现在应该工作,祝你有愉快的一天.