是否可以调用onerror回调,而onclose不会立即调用?换句话说,是否有可能得到一个与连接不一致的WebSocket
错误,然后被关闭?
如果可能的话,我想测试这个案例。我有一个使用node.js和express-ws的模拟后端。我能在后端做些什么来触发前端的onerror事件回调呢
error
事件只会在触发close
事件之前被触发,至少通过正确实现规范的实现,即您将获得error
和close
作为一对,或仅close
本身。
关闭websocket的过程包括3个步骤,如果需要,第二步可选地触发error
事件:
- 如果用户代理要求WebSocket连接失败,或者WebSocket连接被标记为已满后关闭,则在WebSocket对象上触发一个名为
error
的简单事件。(WSP)
在第三步之前then调用close:
在WebSocket对象上触发一个名为
close
的事件,使用CloseEvent
,…
由于这两个步骤是在同一个队列任务中一个接一个地进行的,因此应该一个接一个地调用事件处理程序,在它们之间没有其他事件或任务发生。