HarmonyOS 鸿蒙Next WebSocket 如何发送心跳包

发布于 1周前 作者 vueper 最后一次编辑是 5天前 来自 鸿蒙OS

HarmonyOS 鸿蒙Next WebSocket 如何发送心跳包

目前我是用的是AP12 通过查看 @ohos.net.webSocket 的使用文档,发现类似没有 ios 安卓 的sendPing 方法,导致无法发送心跳包,尝试使用 send 发送 ping,结果失败。有遇到同样问题的嘛?

5 回复
这个截图没太理解,意思是代码层不需要关心心跳? 
2.1   30S内不进行on(send),那么底层会强制断开长连接这一条是什么意思,是30s之内不通过send向服务端发送消息就会断开吗?

cke_283.png
开发者您好,该问题已反馈至相关人员,请耐心等待。

提了issue工单后此问题已解决! 1、当on(connection)->on(open) 后鸿蒙底层会每30S自动发起PING,发起PING的逻辑跟时间,这两者开发者都不能控制(issue后给的答复) 2、当on(connection)->on(open)后:(自测得到的结果) 2.1 30S内不进行on(send),那么底层会强制断开长连接 2.2 当执行 on(send)会一直保持长连接,鸿蒙底层会30S自己发送PING,使用正常 2.3 不要自己通过on(send) 发送PING or ping or Ping 不然立马会断掉长连接

在HarmonyOS(鸿蒙)中,WebSocket的心跳包发送通常依赖于WebSocket的库或框架实现。大多数WebSocket库都支持心跳机制,用于保持连接活跃和检测连接是否中断。在HarmonyOS的Next版本中,如果你使用的是系统推荐的WebSocket库或第三方库(如OkHttp、WebSocket-Client等),你可以通过配置心跳参数来启用或自定义心跳包。

通常,在初始化WebSocket连接时,你可以设置如pingInterval(心跳发送间隔)和pingTimeout(心跳响应超时时间)等参数来启用心跳。请参照你所使用的WebSocket库或框架的文档进行配置。

如果问题依旧没法解决请加我微信,我的微信是itying888。

回到顶部