【发布时间】:2011-07-04 11:53:59
【问题描述】:
我正在 node.js 中构建一个WebSocket 服务器。当客户端连接后,我想立即向它发送一条消息。
但是,当我在握手完成后发送它时,我在 Chrome 中收到错误:
Status line contains embedded null
当我在握手 100 毫秒后使用 setTimeout 发送消息时,它可以工作,但在使用此技术使用 10 毫秒时它再次不起作用。
看起来握手和消息在发送时会附加在一起,以防它们之间的时间间隔很短(尽管我不确定,因为我不知道如何在 Chrome 中查看原始 WebSocket 流量 - 如果有人我也很想听)。
我不想让服务器等待 100 毫秒,因为这对客户端来说肯定是显而易见的,而且它看起来像是一个肮脏的把戏,而不是一个好的解决方案。
如何在握手后立即发送消息?
【问题讨论】:
-
你使用的是哪个 WebSocket 库?
-
@Alnitak:其实我用的是我自己的。
-
我用过github.com/ncr/node.ws.js的那个,没有看到这个问题。
标签: sockets node.js client-server websocket handshake