如何防止Chrome获取MP3文件的最后128个字节

23

我这里有一个问题困扰了我一段时间,所以想向您求助。

为了证明一个概念项目,我创建了一个只使用 HTML 5的last.fm 播放器 ,使用jPlayer。在Firefox中可以正常播放,但是在Chrome(Chromium)中使用html解决方案无法播放。

首先,Chrome会尝试通过流媒体url获取mp3文件。预缓存一段时间后,它将始终尝试通过另一个HTTP请求读取最后128个字节。 现在问题是,last.fm流媒体服务器似乎只允许同时连接一个文件,这将导致两个HTTP连接都失败。 看起来Chrome / Chromium忽略了音频标记的preload =“none”属性。据我了解,该标记仅是给浏览器的建议。

正常的MP3文件可以完美工作。此外,当在浏览器中输入重定向的流媒体url时,它开始播放。看起来last.fm正在使用原始url作为一次性访问令牌/访问控制过滤器,而解析的流媒体url则有效一段时间。

有没有办法从浏览器内部解决这个问题呢?

完整的HTTP标头(隐藏了Cookie),请参见http://pastebin.com/rBAdL4X8。(从Chromium元素检查器复制)。


不确定。也许浏览此项目的代码会给您一些答案... http://code.google.com/p/thelastripper/ - MonkeyWrench
3
我找到了这个bug报告,你可以看一下。 - neoascetic
1个回答

4

目前似乎没有可行的解决方法,但是从neoascetic指向的错误报告的第11条评论中可以看出,这个问题可能会在Chrome的下一个版本 - M20中得到解决。


嗯,这意味着在修复了该错误之后,我将不得不检测用户是否正在使用Chrome浏览器> = M20。很丑陋... - user3001

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接