是否有可能build立一个只使用HTML(5)和JavaScript的洪stream客户端?

还有更多的补充。 有没有可能只使用HTML和JavaScript构build一个洪stream客户端。 你不能使用像Java,ActiveX,NaCl等…如果是,请给出一个高层次的描述。

我没有太多有关前端开发的知识,但我认为websockets将能够进行networking连接(可以将一个客户端连接到另一个客户端,而无需将所有数据通过服务器?)。 我知道你不能使用JavaScript编写文件,所以我认为被下载的文件将不得不完全保存在内存中,否则客户端将不得不使用HTML5中的一个新的API来存储内容。

最近有一个基于WebRTC的实现,它在节点和浏览器中工作: https : //github.com/feross/webtorrent

不,这不对。

这是因为WebSocket规范不属于HTML5和JavaScript;正如所说的,开放的问题是“使用在[渐进式/即将到来的]浏览器中原生支持的function”,那么…

…还没有 🙂

这是因为WebSocket需要特殊的握手来设置限制。 这不是一个免费的开放式TCP-fest。 这个方法也需要

  1. 客户端被修改为接受WebSocket请求(以及处理任何跨站点访问问题)

  2. 或者更现实的说,一台服务器能够反弹

这可以使用Chrome Apps API : chrome.socket和chrome.fileSystem 。

Google Chrome至less有一个纯JavaScript实现: JSTorrent 。

为什么今天不能做到这一点是没有道理的。 BitTorrent / uTorrent都有代码支持与二进制帧的websocket连接。 然而,他们目前正在编译没有支持(由于政治/产品的原因,我认为)。 我曾经在BitTorrent工作,另一位工程师( Arty )写了这个支持。 有一段时间,能够从移动Safari浏览器下载到山寨iPad上真的很酷。 (有趣的是直接保存到Google Drive)

可以将HTTP跟踪器configuration为发送Access-Control-Allow-Origin标题。

跟踪器通告协议也可以在“key”字段中使用一点来表示客户端接受websocket连接。 然后像“typewant”这样的特殊参数可能表示通告响应应该只返回发送那个位的客户端。

跟踪器协议也可以被类似地扩展以支持WebRTC P2P DataChannel连接的协商,从而可以直接在浏览器浏览器上进行连接。

目前,我们拥有chrome.socket平台API,以及Chrome打包应用程序jstorrent (主要为ChromeOSdevise)

你不能使用WebSockets,因为这些是严格的客户端服务器。 但是即将到来的WebRTC标准,主要针对audio/video会议,而且还规定了通用的客户端 – 客户端数据传输。 如果这个规定使其达到最终版本,那么你将有一个可行的方法来实现浏览器之间的通用点对点数据传输。

我迟到了,但是由于这个问题仍然是谷歌search结果中的头号问题,所以我会回答。

您可以使用BitTorrent Torque提供的Javascript界面​​,使用Btapp.js编写与BitTorrent相关的networking应用程序或浏览器扩展。 当你调用connect方法时,系统会提示用户安装BitTorrent Torque,就这些了。 一些很酷的东西,如果你检查使用它的现有项目 – stream媒体,拖放共享等。

至于解决scheme没有任何依赖性,Nick Russler提到的解决scheme似乎仍然是唯一可行的select。