HarmonyOS 鸿蒙Next使用Socket建立长链接,下行消息过长会被截断,怎么处理?

发布于 1周前 作者 h691938207 来自 鸿蒙OS

HarmonyOS 鸿蒙Next使用Socket建立长链接,下行消息过长会被截断,怎么处理?

根据自测的情况来看,一次最多接收8192字节的数据,后续的数据不下发了。再发第二条消息的时候,上一条消息剩余的数据才下发下来。需要再发消息主动触发,这个显然不合理,有解决方法吗?


关于HarmonyOS 鸿蒙Next使用Socket建立长链接,下行消息过长会被截断,怎么处理?的问题,您也可以访问:https://www.itying.com/category-93-b0.html 联系官网客服。

6 回复

可以设置socket接收缓冲区大小,不过不能根本上解决,毕竟再大的缓冲区也有限制。

所以,需要及时读取套接字缓冲区的数据,读取后接收端的接收窗口就打开了,发送端就可以继续发送了,可能你的业务中,一次发送的数据比较多,需要多次接收,那也没关系,每次接收后都存到客户端你自己的一个缓存中,并判断缓存中是否接收到了一个完整的消息,接收完整消息后再处理缓存中的数据。

找HarmonyOS工作还需要会Flutter的哦,有需要Flutter教程的可以学学大地老师的教程,很不错,B站免费学的哦:https://www.bilibili.com/video/BV1S4411E7LY/?p=17

你好大佬,请问怎么及时读取缓冲区,在on(‘message’)的回调里读取吗

怎么读取缓冲区的数据呢?

回到顶部