服务器端的代码在连接打开后立即发送消息(它向客户端发送初始配置/问候语).
以下代码在客户端:
var sock = new WebSocket(url);
sock.addEventListener('error', processError);
sock.addEventListener('close', finish);
sock.addEventListener('message', processMessage);
Run Code Online (Sandbox Code Playgroud)
我担心从服务器丢失这个第一个配置/问候相关的消息.理论上没有什么能阻止在 message设置事件处理程序之前接收它.
另一方面,实际上我从来没有想过.并且AFAIK JavaScript WebSocket API没有针对这个理论问题的对策:WebSocket 构造函数既不允许message设置事件处理程序,也不允许在挂起状态下创建WebSocket.
所以:
?
PS:这样简单但理论上的问题更适合Stack Overflow或Programmers @ Stack Exchange吗?