Javascript 音频网络音频类获奖';t接受带有“的源”;C:“/”;类型url

Javascript 音频网络音频类获奖';t接受带有“的源”;C:“/”;类型url,javascript,express,audio,Javascript,Express,Audio,上面的代码给了我“net::ERR\u UNKNOWN\u URL\u SCHEME”错误,它会自动将文件:///前缀添加到URL。它适用于/folder/audioFile.mp3类型的URL(没有windows驱动器),但是我无法通过这种方式访问windows上的其他硬盘 我以前在AudioBufferSourceNode中使用过xhtmlrequest,效果很好(这将是一个本地电子应用程序,应该可以访问文件系统,所以web浏览器的安全性不是问题)。我无法使用AudioBufferSourc

上面的代码给了我“net::ERR\u UNKNOWN\u URL\u SCHEME”错误,它会自动将文件:///前缀添加到URL。它适用于/folder/audioFile.mp3类型的URL(没有windows驱动器),但是我无法通过这种方式访问windows上的其他硬盘

我以前在AudioBufferSourceNode中使用过xhtmlrequest,效果很好(这将是一个本地电子应用程序,应该可以访问文件系统,所以web浏览器的安全性不是问题)。我无法使用AudioBufferSourceNode,因为我需要停止、暂停、查找等


网页是从运行在localhost上的express服务器加载的,但是当使用C:/style url时,服务器甚至不会收到请求,它只是在web浏览器的控制台中抛出错误。将相同的url直接放入webbrowser中是可行的,因此url是正确的。在多个浏览器中进行了测试。

该问题并非特定于音频

net::ERR\u未知\u URL\u方案

无论您在web上做什么,都不能以这种方式添加路径。您必须使用
文件:

但是,我无法通过这种方式访问windows上的其他硬盘

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

我使用了xhtmlrequest

XHR是不相关的,因为没有HTTP服务器来发出请求

该网页是从本地主机上运行的express服务器加载的


以某种方式获得一个实际的文件引用并使用blobURL,您应该不会有问题。否则,您必须通过Express服务器代理数据。

谢谢您提供的信息。我通过将“:”替换为“$”并在服务器上执行相反的操作,使其工作正常,我可以获得所需的任何文件now@JacklinHeirdom好的,当你代理这些文件时要小心确保文件的来源,这样你就不会把用户的硬盘透露给别人了!
let audio = new Audio("C:/audioFile.mp3")