我需要隐藏音频流的 url,所以我认为既然我有一个readfile();
用于执行此操作的下载脚本,我可以这样做,但我不确定如何在 javascritpt 中操作它。事实上,我不知道,甚至不确定是否可以这样做。
到目前为止,我有一个由 javascript 访问的 PHP 文件,以便在单击播放按钮时从 ID 获取曲目的 URL。
$T_ID = mysqli_real_escape_string($con, $_GET['t_id']);
$qry = "SELECT url FROM tracks WHERE T_ID = $T_ID";
$result = mysqli_query($con, $qry);
$row = mysqli_fetch_array($result);
$url = $row['url'];
$path_parts = pathinfo($url); //get path info
$file_name = $path_parts['basename']; //only include mp3 track just incase path added in there
$file_path = 'uploads/' . $file_name; //add path
echo $file_path;
javascript 仅使用其中的 url 来指定new Audio();
. 但是,任何知道打开控制台并查看网络选项卡的人都可以找到曲目的 URL 并下载它。这不是我想要的或我的用户想要的。
我的初步想法是替换echo($file_path)
为,readfile($file_path)
但我知道它需要以某种方式在 javascript 中进行操作。如果 PHP 以二进制形式读取文件,那么 javascript 也可以这样做来流式传输它吗?