近日发现不少文章被转载,本博客内均为博主原创文章,转发务必写明来源,否则有权追究.
问题:
当websocket服务器故障或用户掉线时,websocket默认连接超时大约20-30s
才onclose
,这样当用户上线或服务器故障恢复时,至少要等待30s
才能连上.
需求:
当超过设定时长未能连上就断开重连,不默认等待.
解决方案:
websocket=>连接=>setTimeout验证readyState!=1则断开=>onclose进行重连.
范例代码:
var wsData={
url:'wss://localhost',timeout:5000}