4

我在某些网络中使用 socket.io 时遇到问题。

我用来测试的演示页面和节点服务器最初是在这里这里找到的。它是 socket.io 提供的一个简单的聊天客户端。

当用户从某些封闭网络(如办公室或大学)访问我的服务器上的此演示页面时,用户会反复连接和断开连接,直到最终断开连接。在此期间 Node.js 的输出是:

3 May 07:50:41 - Initializing client with transport "jsonp-polling"
3 May 07:50:41 - Client 16640139906667173 connected
3 May 07:50:41 - Initializing client with transport "jsonp-polling"
3 May 07:50:41 - Client 6106549079995602 connected
3 May 07:50:41 - Initializing client with transport "jsonp-polling"
3 May 07:50:41 - Client 8987158865202218 connected
3 May 07:50:42 - Initializing client with transport "jsonp-polling"
3 May 07:50:49 - Client 16640139906667173 disconnected
3 May 07:50:49 - Client 8987158865202218 disconnected
3 May 07:50:49 - Client 6106549079995602 disconnected

这种情况一直持续到浏览器放弃并永久断开连接。

以前有没有人遇到过类似的问题?什么可能导致 socket.io 在特定网络中失败?

谢谢你。

4

1 回答 1

4

一些办公室/大学网络会过滤掉高于众所周知的端口阈值 (1024+) 的端口。这可以防止用户使用 P2P 软件(包括 8080)并提供较少阻塞的网络。我建议将聊天客户端端口更改为该范围内的端口或众所周知的端口,我可能会选择 81-90。

于 2011-05-04T21:09:37.803 回答