Firefox(和 IE)的 WebSocket 替代方案是啥

Posted

技术标签:

【中文标题】Firefox(和 IE)的 WebSocket 替代方案是啥【英文标题】:What is the alternative to WebSocket for Firefox (and IE)Firefox(和 IE)的 WebSocket 替代方案是什么 【发布时间】:2011-05-24 17:11:59 【问题描述】:

在 Firefox(或 IE)上寻找 WebSocket 时...

if ("WebSocket" in window)

    ...

else

    alert('Your browser does not support websocket');

他们都失败了!

如果他们没有任何 WebSocket,JS 中有没有办法与服务器交换一些 TCP 消息? (连接/发送/接收???)

【问题讨论】:

【参考方案1】:

查看Socket.IO 和Faye 以了解可移植实现。

【讨论】:

我刚刚快速浏览了一下并进行了快速测试。这些解决方案需要我在 JS 中重做我的服务器!他们也使用 GET 协议。有没有办法从 JS 做简单的套接字?我有一个服务器已经完成并正在运行。我只需要使用 TCP 发送一些命令,然后我想在同一个套接字上读取答案。两种方式都只做文本。 像这样的库的好处是它们抽象出不兼容并优雅地降级用于根本不支持套接字的浏览器(例如今天仍然大量使用的旧 IE)。检查您在服务器上使用的语言是否有任何 Bayeux 协议实现,然后您可以将 Faye 与服务器上的任何内容一起使用。【参考方案2】:

您还可以使用web-socket-js,它使用 Flash 添加 WebSockets 支持。事实上,如果浏览器本身不支持 WebSockets,Socket.IO 使用 web-socket-js 作为后备。 Socket.IO 非常好,但如果您只想要较低级别的 WebSockets 支持而不需要用 javascript 编写后端,那么存在许多 WebSockets 服务器。

【讨论】:

以上是关于Firefox(和 IE)的 WebSocket 替代方案是啥的主要内容,如果未能解决你的问题,请参考以下文章

Websocket 握手仅在 IE 10 中立即关闭

IE10 上的 WebSocket 给出 SecurityError

websocket链接数限制

WebSocket协议

Spring Boot教程32——WebSocket

如何测试webservice和websocket接口