javascript - 【0回复惨案】nodejs用net模块接收tcp数据,有没有成熟的解决粘包方案
本文介绍了javascript - 【0回复惨案】nodejs用net模块接收tcp数据,有没有成熟的解决粘包方案的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
我现在需要从C++写的服务器接收tcp数据,每次4027字节,100ms一次,之前用到了nodejs的net模块和一个网上的exbuffer的js文件,但是还是会有粘包的情况。
试过websocket和socket.io,但是建立不了连接。
所以,有什么成熟的方案或者文档参考能够这个问题吗?
详细内容:
https://segmentfault.com/q/10...
0回复惨案。。。
解决方案
其实很简单,做个最简单的校验
if(data.length==len&&data.readInt8(0)==170){
//把代码加进去就行了
}
简单解释一下,因为我的tcp数据有包头0xAA,所以加了个条件更保险点,当然这样丢不丢包我不知道,但是100ms的数据丢一两个我也无所谓,目前看来没什么大问题。
这个exbuffer实在没看懂,不怎么好用,弃了。。。(ps:node v6.0都不支持new buffer了)
这篇关于javascript - 【0回复惨案】nodejs用net模块接收tcp数据,有没有成熟的解决粘包方案的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文