与浏览器端Javascript的实时二进制套接字连接

时间:2011-07-06 17:26:37

标签: javascript websocket

我希望能够从网页打开与服务器应用程序长时间运行的二进制连接。我应该能够以频繁但任意的间隔将数据从服务器推送到客户端并使其快速到达(因此HTTP GET轮询可能不充分)。我希望能够在客户端解压缩和解码二进制数据,而不是将服务器更改为使用不同的协议,因为服务器已经拥有自己的协议。

如果有必要,我可以插入一个可以在浏览器和服务器之间进行转换的代理应用程序,但我希望它尽可能地小。并且服务器或与服务器通信的此代理应用程序可以与网页位于同一域中,如果这会影响安全模型。

我知道Socket.IO之类的东西似乎与我想要的很接近,但是很难说它的功能和限制是什么。我也知道使用Java applet会相当容易,但我更喜欢不需要插件的解决方案(或者只需要Flash,最糟糕的是,但我仍然希望在Javascript中完成大部分工作)。 / p>

此外,跨平台可用性非常重要 - 如果我可以达到70%的桌面浏览器那么好。虽然没有打扰古老的浏览器 - 我不介意强迫用户升级,只是不安装新东西。如果它也适用于iPhone和Android也会很棒。

我最好的选择是什么?

1 个答案:

答案 0 :(得分:1)

使用XMLSocket的Flash小程序可能是您最好的选择,除非移动兼容性很重要。它对您可以发送的数据格式设置了一些限制(所有数据都以NUL分隔的数据包发送),但如果有必要,这很容易代理。