WebSocket在发送时关闭

her*_*n43 6 javascript html5 websocket node.js

所以我看到这个伟大的博客文章,用Node.js的进行实验.我决定尝试使用作者的要点自己设置它.它没用.

进一步调试显示websocket连接正常,但是一旦调用'send'就关闭.这是wireshark跟踪(原谅奇怪的间距):

GET /test HTTP/1.1

Host: 127.0.0.1:8000

Sec-WebSocket-Key2: 3   j 92 9   62" 7 0 8 8

Upgrade: WebSocket

Connection: Upgrade

Origin: http://127.0.0.1:3000

Sec-WebSocket-Key1: 96'5% S72.93?06



......(bHTTP/1.1 101 WebSocket Protocol Handshake

Upgrade: WebSocket

Connection: Upgrade

Sec-WebSocket-Origin: http://127.0.0.1:3000

Sec-WebSocket-Location: ws://127.0.0.1:8000/test



.4.R....mh.....{.{"action":"move","x":450,"y":22,"w":1146,"h":551}.
Run Code Online (Sandbox Code Playgroud)

我在Chrome和Firefox 4.0测试版中都尝试过这种方法.它们都表现出相同的行为.如果我去原始博客网站,它工作正常.

另一件事.如果我在FF或Chrome中进入JS控制台,我会执行以下操作:

ws = new WebSocket('ws://localhost:8000/test')
ws.send("foo")
Run Code Online (Sandbox Code Playgroud)

它立即断开连接并且不发送消息.服务器显示连接和握手,但从不接收消息.

我在这里发现了几个类似的问题,但要么在没有发布修复的情况下解决,要么在这种情况下似乎不适用.我可以发布gist中的代码,如果它更容易.

her*_*n43 1

主要打头。尽管我相信自己已经安装了最新版本的 Node.js,但实际上却没有。我有几台装有 Node.js 的机器,我一定是迷路了。我有 Node.js v0.1.96。升级到v0.1.102后,一切正常。

对不起大家!:-D