当前位置 : 主页 > 网页制作 > Nodejs >

node.js – socket.io websocket连接无效(最新的chrome)

来源:互联网 收集:自由互联 发布时间:2021-06-16
安装node.js后,我按照这个 tutorial启动了一个简单的聊天服务器.它很容易设置并且正在工作,但我注意到两个问题: 1.)我从socket.io收到此警告 info - socket.io starteddebug - served static /socket.io.
安装node.js后,我按照这个 tutorial启动了一个简单的聊天服务器.它很容易设置并且正在工作,但我注意到两个问题:

1.)我从socket.io收到此警告

info  - socket.io started
debug - served static /socket.io.js
debug - client authorized
info  - handshake authorized 1385647068766475337
debug - setting request GET /socket.io/1/websocket/1385647068766475337
debug - set heartbeat interval for client 1385647068766475337
warn  - websocket connection invalid

这对我来说没有意义,因为我没有使用socket.io接触任何内容,而且我使用的是最新的chrome版本(23),我知道它支持websockets(我能够使用PHP-Websockets成功连接它们).它继续使用XHR,但我真的很想让Websocket功能正常工作.

2.)当我转到localhost:8080连接到聊天服务器时,它需要大约7-8秒才能提示我输入我的名字并实际将我连接到服务器.我有一种感觉,这可能是因为它正在恢复到XHR,但我真的不太了解它所以我不能说.有什么想法吗?

当使用旧版本的socket.io和更高版本的chrome(以及其他浏览器)时,我看到了这种行为.它将超时然后回退到xhr轮询.要检查您正在使用的socket.io库的版本,请在shell(linux / unix)中键入:

npm ls| grep socket.io

它应该告诉你版本.目前最新的是0.9.13,有效.

如果您从http://psitsmike.com运行该教程,请注意package.json文件硬编码旧版本的socket.io,该版本不适用于最新的浏览器.

希望这可以帮助.

网友评论