2012-04-06 45 views
23

我現在有一個問題,所以我想我會尋求你的幫助。如何防止Chrome獲取MP3文件的最後128個字節

對於概念驗證項目,我使用jPlayer創建了一個HTML 5 only last.fm player。它適用於Firefox,但在使用Chrome(Chromium)時無法使用HTML解決方案。

首先,Chrome嘗試通過流網址獲取mp3文件。在預先緩衝一點後,它總是嘗試通過發出另一個HTTP請求來讀取最後的128個字節。 現在的問題是,last.fm流服務器似乎每次只允許每個文件一個連接,這會導致兩個http連接失敗。 看來Chrome/Chromium忽略了音頻標籤的preload =「none」屬性。據我所知,標籤只是瀏覽器的一個建議。

正常的MP3文件就像一個魅力。此外,在瀏覽器中輸入重定向的流式傳輸網址時,它將開始播放。看起來,last.fm使用原來的url作爲一次性訪問令牌/訪問控制過濾器,而已解析的流url有效期爲一段時間。

對於完整的HTTP標頭(Cookie已刪除),請參閱http://pastebin.com/rBAdL4X8。 (由鉻元素檢查員複製)。

有什麼辦法可以在瀏覽器中繞過這個問題嗎?

+0

不確定。也許瀏覽這個項目的代碼會給你一些答案... http://code.google.com/p/thelastripper/ – MonkeyWrench 2012-04-11 14:31:56

+3

我發現[這個錯誤報告](http://code.google.com/p/)鉻/問題/細節?ID = 94285)。看看 – neoascetic 2012-04-12 00:32:02

+0

謝謝,@neoascetic :) – user3001 2012-04-17 11:33:57

回答

4

目前似乎沒有解決方法,但是從neoascetic指出的bug報告的評論11中可以看出,它可能會在下一版Chrome-M20中得到解決。

+0

嗯,這意味着我將不得不檢測錯誤修復後用戶是否使用Chrome瀏覽器> = M20。醜... – user3001 2012-04-17 11:33:23

+1

該錯誤已修復,但仍無效 – user3001 2012-04-24 10:43:20