安装node.js后,我按照这个 tutorial启动了一个简单的聊天服务器.它很容易设置并且正在工作,但我注意到两个问题: 1.)我从socket.io收到此警告 info - socket.io starteddebug - served static /socket.io.
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,该版本不适用于最新的浏览器.
希望这可以帮助.