javascript - 音频webaudio类将不接受 “C:/”类型url的源

标签 javascript express audio

let audio = new Audio("C:/audioFile.mp3")

上面的代码给我“net::ERR_UNKNOWN_URL_SCHEME”错误,它会自动将file:///前缀添加到URL。它可以与/folder/audioFile.mp3类型的url(没有Windows驱动器的东西)一起正常工作,但是我无法以这种方式访问​​Windows上的其他硬盘驱动器。

我之前将xhtmlrequest与AudioBufferSourceNode一起使用过,并且工作正常(它将是一个本地电子应用程序,应该可以访问文件系统,因此Web浏览器的安全性不是问题)。我无法使用AudioBufferSourceNode,因为我需要停止,暂停,搜索等。

该网页是从运行在localhost上的express服务器加载的,但是使用C:/样式url时,该服务器甚至不会收到请求,它只会在Web浏览器的控制台中引发错误。将相同的URL直接放入Web浏览器即可,因此该URL没问题。在多种浏览器中测试。

最佳答案

该问题并非特定于音频。

net::ERR_UNKNOWN_URL_SCHEME



无论您在网络上做什么,都无法以这种方式添加路径。您必须使用file:

however I cannot access other hard drives on windows that way



正确,这是不允许的。使用file:时有很多限制。

I've used xhtmlrequest



XHR无关紧要,因为没有HTTP服务器可以发出请求!

The web page is loaded from an express server running on localhost



以某种方式获得实际的文件引用并使用Blob URL,您应该会很好。否则,您将必须通过Express服务器代理数据。

关于javascript - 音频webaudio类将不接受 “C:/”类型url的源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61978016/

相关文章:

java - 循环声音Java

javascript - 是否可以防止 Bootstrap 轮播在鼠标悬停时暂停并继续自动循环?

javascript - 如何像<a>一样触发div

javascript - 使用 Javascript 解析 Freemarker 模板

mysql - 将 Sequelize/Node 连接到 XAMPP Mysql

reactjs - express 服务器中出现意外的 token react 路由器

javascript - 使用 Ladda 按钮

javascript - Node 快车: i cannot get value of id from jquery post

Python/Pygame 按钮按下声音

c# - 在 Windows 音频混音器(C# 或 C++)中显示 Audio Session