簡體   English   中英

瀏覽器無法處理JS調用的mp3資源,而是將其下載(DOMException:無法解碼音頻數據)

[英]browser cant process mp3 resources called by JS , instead it will download them (DOMException: Unable to decode audio data)

我正在嘗試在服務器上安裝html5 / js游戲,游戲中有幾個mp3文件會在js代碼中加載...類似

createjs.Sound.alternateExtensions = ["ogg"];
createjs.Sound.addEventListener("fileload", createjs.proxy(this.soundLoaded, this));
createjs.Sound.registerSound(REL_GAME_URL + "sounds/chip.mp3", "chip");
createjs.Sound.registerSound(REL_GAME_URL + "sounds/click.mp3", "click");
createjs.Sound.registerSound(REL_GAME_URL + "sounds/fiche_collect.mp3", "fiche_collect");
createjs.Sound.registerSound(REL_GAME_URL + "sounds/fiche_select.mp3", "fiche_select");
createjs.Sound.registerSound(REL_GAME_URL + "sounds/wheel_sound.mp3", "wheel_sound");

它正在使用createjs加載文件,但問題與createjs無關,因為我一直在嘗試使用純JavaScript代碼加載音頻文件時遇到相同的問題

所以這是問題所在,本地主機中的此代碼工作正常,但是當我將其上載到服務器而不是加載mp3文件時,chrome將下載文件! 並在控制台中給我這個錯誤:

Uncaught (in promise) DOMException: Unable to decode audio data

即時通訊不知道是什么問題,但是即使我直接在瀏覽器中輸入mp​​3文件,它也會下載而不是播放/流式播放

問題將是文件處理程序的MIME類型。 告訴瀏覽器如何告訴操作系統如何處理它。 如果指定正確的mime類型並正確下載,瀏覽器將在用戶指定的應用程序中打開MP3文件,以處理該.mp3文件類型。

CONTENT DISPOSITION http標頭字段是您的關鍵:

https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Headers/Content-Disposition

請向我們展示一些代碼,以便我們提供進一步的幫助。

因此,這是將來可能會遇到此問題的人的答案...這是與Internet下載管理器(IDM)的集成問題...我已通過禁用idm解決了它!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM