HTML5音频播放安全网址

时间:2014-01-14 17:44:11

标签: javascript ios html5 audio

我们有一个播放叙述的书籍播放器应用程序。在点击页面时,它具有该书的所有音频URL的摘要。当您更改页面时,音频应该自动播放。在桌面上,这可以正常工作,而在iOS Safari中,如果没有直接的用户交互,它将无法播放。这意味着调用堆栈必须具有用户单击事件,这也是可以的,因为每次页面更改都需要单击。

但是,我们最近切换到需要签名网址的CDN,我们通过对我们网站的ajax调用进行签名。由于这些网址已过期,因此我们必须在获得签名网址后立即加载音频资源。所以这意味着,我们不是通过更改页面来触发加载/播放,而是在我们更改页面时触发URL签名。理想情况下,URL签名的响应应该能够触发音频播放,但onreadystatechange成为调用堆栈的根。由于这不再是click事件的调用堆栈,因此在页面上播放音频现在是一个两个步骤,这是不太理想的。

据我所知,我们有几个选择:

  • 启动书籍时预加载所有音频(这很愚蠢,因为这可能是几百MB)。
  • 预先签署所有音频,将到期时间设置为很长时间(这很愚蠢,因为这实际上绕过了安全的CDN)

有没有其他人不得不处理这样的事情?你是怎么绕过它的?任何人都可以看到我缺少的其他选项吗?

0 个答案:

没有答案