JavaScript   发布时间:2022-04-16  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了javascript – websocket onclose在chrome-linux中没有触发,当客户端与网络断开连接时大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

我在服务器端使用java实现了websocket.在客户端我创建了websocket对象,我有自己的函数用于所有事件,包括onClose.我测试了重新连接…在chrome 26中使用websocket,Mozilla都是windows和chrome.

当我插入网络电缆时,Windows中的Chrome触发onclose事件(即关闭代码1006 [异常关闭]的关闭触发器,如https://developer.mozilla.org/en-US/docs/Web/API/CloseEvent中所述)但Linux中的Chrome不会触发任何事件.

请提出我的错误.

我确切的问题是为什么当网络断开时,Windows中的chrome触发器会关闭,但是在linux的情况下,它不会被触发.

最佳答案
这些应用程序可能没有注意到TCP连接中断.超时用于检测失败的TCP连接,我相信默认超时很长.

浏览器/操作系统应该注意到,一旦尝试发送数据,连接就会消失.拔下网线后尝试发送一些数据,看看是否会触发事件.

还有,你等了多久信号?也许连接只有很长的TCP超时.

如果您仍然没有收到关闭事件,则可能是由于实施中的错误.如果您绝对需要知道连接何时发生故障,请使用您自己的超时实现ping机制.我相信websocket协议定义了自己的ping协议,可能会虑到这一点.

此外,对于铬,似乎有一个issue申请.也许它会帮助你.

大佬总结

以上是大佬教程为你收集整理的javascript – websocket onclose在chrome-linux中没有触发,当客户端与网络断开连接时全部内容,希望文章能够帮你解决javascript – websocket onclose在chrome-linux中没有触发,当客户端与网络断开连接时所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。