Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 通过HTML5传输本地文件_Javascript_Jquery_Html_Audio_Streaming - Fatal编程技术网

Javascript 通过HTML5传输本地文件

Javascript 通过HTML5传输本地文件,javascript,jquery,html,audio,streaming,Javascript,Jquery,Html,Audio,Streaming,我正试图写一些东西,让我可以使用我的浏览器使用HTML5流文件,但到目前为止,我没有运气。如果我把文件放在某个地方,或者放在网站的目录中,它就可以工作,但是我希望能够从任何地方播放文件,而不是我的电脑 以下是我最近的一次尝试: <audio id="player" src="file:///c:/test.mp3" controls autoplay autobuffer>Your browser does not support the audio element.</aud

我正试图写一些东西,让我可以使用我的浏览器使用HTML5流文件,但到目前为止,我没有运气。如果我把文件放在某个地方,或者放在网站的目录中,它就可以工作,但是我希望能够从任何地方播放文件,而不是我的电脑

以下是我最近的一次尝试:

<audio id="player" src="file:///c:/test.mp3" controls autoplay autobuffer>Your browser does not support the audio element.</audio>
您的浏览器不支持音频元素。
使用托管文件可以很好地工作,并且file:///c:/test.mp3 在我的浏览器窗口中可以正常工作,但两者结合在一起不起作用

我尝试了我能想到的所有组合,包括:

<audio id="player" src="c:/test.mp3" controls autoplay autobuffer>Your browser does not support the audio element.</audio>

<audio id="player" src="file:///c:\test.mp3" controls autoplay autobuffer>Your browser does not support the audio element.</audio>

<audio id="player" src="file:c:\test.mp3" controls autoplay autobuffer>Your browser does not support the audio element.</audio>
您的浏览器不支持音频元素。
您的浏览器不支持音频元素。
您的浏览器不支持音频元素。
但似乎什么都不管用。有人知道这是为什么吗?是否有解决办法。我花了好几个小时尝试不同的东西,在网上搜索,但还没找到运气。我将非常感谢任何帮助


谢谢

我不确定你想在那里实现什么,但是,恕我直言,这在现代浏览器中是不可能实现的。这并不是因为这样做有任何技术问题。这只是因为浏览器阻止你这么做

如果你的网页正在请求一些除图像、CSS、JavaScript或请求本地资源的跨域资源,浏览器会阻止你,因为浏览器厂商认为它们是“强”>不安全的< /强>操作,如果允许的话,可能被滥用以侵犯隐私。 因此,在我的理解中,你应该停止你正在尝试做的事情,因为唯一的解决办法是使用旧的不安全的浏览器,这不会阻止你做任何事情(但是它不支持HTML5)


但是,当然,如果你只是在做一些自己喜欢的事情,你可以选择在你的电脑上设置一个简单的网络服务器,然后把媒体文件和网页放在一起。如果您想要充分利用服务器,您可以选择nginx或apache(或IIS,如果您的Windows版本支持),如果您只是在制作个人玩具,则可以使用python中的SimpleHTTPServer。

为什么这里有jquery和javascript标记?因为如果有解决方法,那么可能是某种形式的JS。感谢您提供的信息,这只是个人使用,我只是做一个小的音乐播放器,几乎所有的事情都做了,除了这件事。我真的不想拥有我所有音乐文件的两份拷贝,一份是我把它们存储在电脑上的,另一份是我运行程序的地方。我觉得必须有一些技巧或方法来解决这个问题。我见过类似的事情,人们将东西从PC位置流式传输到浏览器应用程序,我只是不知道它是如何做到的。如果你使用Linux或MacOS,这可以通过在服务器文档根下创建符号链接来实现。windows中的快捷方式不起作用。如果您想流式传输本地文件,您需要开发浏览器插件或使用其他类型的应用程序以HTTP方式承载媒体文件。