2013-06-27 32 views
0

我正在使用JavaScript实现流协议。该协议是根据字节流定义的,而不是消息。我希望能够使用此协议与浏览器交谈。跨浏览器的BSD风格套接字或Node.js流

我以前使用过Socket.io,以方便跨浏览器的全双工网络。但是,在这种情况下,我需要BSD风格的套接字。理想情况下,我可以编码到Node.js流API并在浏览器中具有相同(或非常相似)的代码工作。

是否有类似Socket.io的字节流?即经过良好测试,跨浏览器,多传输,心脏跳动等。

回答

0

到目前为止,http://binaryjs.com/是最接近我需要的。不幸的是,文件表明它有点不成熟。我很乐意找到一个更加稳定的库,并提供更广泛的浏览器支持。

0

Socket.IO在幕后使用了大量的技术,使其非常易于使用和可靠。许多用户将拥有长轮询回退,这只是纯粹的HTTP协议。
尽管WebSockets确实支持二进制类型的消息,但它与长轮询或任何其他回退技术不一样,所以只要它不是所有传输中的东西,Socket.IO都不会支持它。

以及WebSockets和Socket.IO是纯粹的基于消息的通信协议。在WebSocket的情况下,它会围绕每条消息进行构建,这将推动流式传输的开销。
你需要的是基于流的通信,但不是基于消息的。据我所知,这是一个长期的话题,在网络世界中仍然不清楚。

尽管您可以将WebRTC看作未来数据流的可能性,并且可能会满足您的需求。
其他一些选择是为浏览器使用插件或扩展,例如flash,unity,定制内容等,以便启用真正的流媒体功能。