早上好,
我已经使用 SO 上的修改示例组装了一个音乐播放器。如果文件位于网站目录中,我的播放器可以正常播放歌曲,但是我希望更改它,以便源可以存在于服务器上的任何位置。我在这里查看了这方面的示例,但是我发现这些示例要么不起作用,要么不适用于我的情况。
目前我有这一行:
<audio id="audio-player" src="media/song.mp3" type="audio/mp3" controls="controls"></audio>
播放位于网站目录中的 media 文件夹中的文件。
我想要的是这样的:
<audio id="audio-player" src="C:\song.mp3" type="audio/mp3" controls="controls"></audio>
目前我正在使用 HTML 和 JS 进行此操作,但我愿意接受任何建议。我真正关心的是我可以制作一个可以从任何位置播放文件的音乐播放器,无论这是如何完成的。
感谢您的宝贵时间。
最佳答案
当 url 为 C:\song.mp3
时,您告诉用户访问其本地 C 驱动器。您需要创建一个代理网页来访问不在本地 Web 根目录 (public_html) 中的文件。因此,您可以在本地 webroot 中创建一个包含以下代码的网页:
代理.php
<?php
header("Content-Type: audio/mp3");
echo file_get_contents("C:\\audio\\" . $_GET["name"] . ".mp3");
?>
如果您想访问所需的音频文件,您可以访问 URL proxy.php?name=song
。就像这样
<audio id="audio-player" src="proxy.php?name=song" type="audio/mp3" controls="controls"></audio>
您还应该阻止任何 "..\"
以及可能的 "~"
,以便它们无法访问父文件夹。
关于javascript - HTML 音乐播放器 - 绝对文件位置(即 C :\song. mp3),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22481370/