root_test
root_test
  • 发布:2019-08-23 15:41
  • 更新:2020-12-23 09:53
  • 阅读:1012

websocket 定时失败

分类:uni-app

设置定时器监听心跳, 设置10s , 结果2-3s 就发送数据,返回的数据 每次都在增加, 都不是每1 条,求大佬 解答

2019-08-23 15:41 负责人:无 分享
已邀请:
DCloud_UNI_GSQ

DCloud_UNI_GSQ

把onsocektmessage挪到定时器之外

ben168

ben168 - App developer

看了很多网上关于websocket 心跳的帖子,尤其是很多帖子用javascrypt 编程的例子,都是自己用timeout 方式实现向服务器发送‘心跳‘包来解决是否连线的问题。我认为这些帖子会误导开发者的。

因为, websocket 底层已经实现的心跳机制(ping / pong 包), 一般是服务端成功接受一个websocket 链接后,每隔一定的时间间隔(如5秒)就向客户端发送一个 ping, 客户端收到ping后,自动回复pong 包(这是底层实现的,不需开发者care)。
服务器端如果收不到对应的pong,则认为这个连接断开了,做close 处理。

该问题目前已经被锁定, 无法添加新回复