握手后立即发送WebSocket消息

我在node.js中构build了一个WebSocket服务器。 当客户端连接时,我想立即发送消息给它。

但是,当握手完成后我发送它时,Chrome中出现错误:

 Status line contains embedded null 

当我使用setTimeout在握手之后100毫秒发送消息时,它工作,但是当使用这种技术使用10毫秒时,它又不起作用。

它看起来像握手和邮件附加时发送到一起发送时,他们之间的时间间隔很小(虽然我不知道,因为我不知道如何查看原始的WebSocketstream量在Chrome中 – 如果有人不,我会也喜欢听到这个)。

我不希望服务器等待100毫秒,因为它肯定是显而易见的客户端,而且它看起来像一个肮脏的伎俩,而不是一个很好的解决scheme。

如何在握手后立即发送消息?

我已经把它整理出来了 – 当有一个连接的时候,我正在发送它,但是这是在握手被发送之前。 所以我在做:

 client connected send message receive handshake request send handshake response ... 

当握手被发送时,我刚刚改变了我的代码库的connect事件,也就是当WebSocket连接真正build立的时候。

作为一个方面说明,我想提一下,在debuggingWebSocket连接时,你可以很容易地看到chrome:// net-internals /是一个非常有用的页面(你可以很容易地看到请求/响应握手)。 我早该知道