在MP3文件上设置授权以进行流



我想在需要登录的网页上托管一些通过基本的HTML5音频播放器播放的MP3文件,但是MP3无法公开访问。

我的第一个想法是设置一个子域并使用基本验证,以便我可以通过URL中的凭据传递,但是事实证明,这在Chrome中不起作用,并且向用户弹出的auth消息要求凭证。

从那时起,我一直在尝试几种方法,例如通过PHP代理请求或让PHP为我流动音频,但我似乎无法使其工作。不管我在该主题上找到的指南或教程如何,我都会发出浏览器的消息,说MIME类型无效。我已经尝试使用响应标题,调整脚本或libs,但我有点损失。

关于如何实现这一目标的任何建议都是很棒的。

有两种处理方法。两者都有许多特定的实现。

方法1:验证每个媒体文件请求的凭据

这与对您的应用程序进行任何其他请求相同。但是,您正在执行登录授权,以相同的方式处理MP3。

方法2:预签名URL

如果您使用的是CDN,这是一个容易获得的选项。您的应用程序会生成URL,并用URL的基本部分和秘密的哈希签名。CDN知道(或以其他方式验证(URL是用授权的秘密签名的,并且不需要重新验证。这是表现的,并确保系统之间的职责分开。作为奖励,这些URL可以设置为仅工作几分钟。这就像为每个仅适用于一个人(理想情况下(的单独文件生成一个密码,并且仅在短时间内才能自动旋转到新密码。您的应用程序每次生成URL时有效地提供此密码(签名(。

最新更新