【问题标题】:how to use fallbacks in socket.io for providing long polling on a websocket server?如何使用 socket.io 中的后备来在 websocket 服务器上提供长轮询?
【发布时间】:2023-03-17 07:14:01
【问题描述】:

我有一个现有的 websocket 服务器,它通过 websockets 为某些非 http/s 端口上的 IM 提供 json。

这适用于支持 websocket 协议的浏览器,但许多其他浏览器无法使用该功能。

我正在阅读 socket.io 和 nodejs 并正在考虑在 websocket 服务器前面添加一个使用 socket.io 和 nodejs 的代理来处理所有 websocket 请求。由于 socket.io 支持使用 flash websockets 或长轮询的回退,我希望在客户端使用 socket.io 也可以支持所有旧浏览器。

所以,我的问题是,

  1. 上述方法可行吗?
  2. 如何在 nodejs 中处理回退到长轮询?是自动处理还是需要实施?
  3. 任何可能帮助我的现有资源。

谢谢

【问题讨论】:

    标签: node.js websocket socket.io


    【解决方案1】:
    1. 它可以变得可行。但是,我建议将 NodeJS 和 Socket.IO 用于非 http 请求和浏览器的 http 请求。 NodeJS 可以非常轻松地处理它们。
    2. Socket.IO 自动处理回退。
    3. 一个简单的聊天系统示例here for http。

    【讨论】:

    • 那么,下面的工作可以吗?在这里,我假设 node.js 代理只需要声明传输支持并且只需要处理它是两端的 websocket 连接(对彗星或闪存套接字没有特殊处理)。 IE6 浏览器 (socket.io) 代理 (node.js+socket.io) WebSocket 聊天服务器
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-05-25
    • 1970-01-01
    • 2014-01-08
    • 1970-01-01
    • 1970-01-01
    • 2011-09-02
    • 2023-03-12
    相关资源
    最近更新 更多