TDArray
TDArray
采纳率37.5%
2017-03-06 09:36

【0回复惨案】nodejs用net模块接收tcp数据,有没有成熟的解决粘包方案

我现在需要从C++写的服务器接收tcp数据,每次4027字节,100ms一次,之前用到了nodejs的net模块和一个网上的exbuffer的js文件,但是还是会有粘包的情况。
试过websocket和socket.io,但是建立不了连接。

所以,有什么成熟的方案或者文档参考能够这个问题吗?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

2条回答

  • TDArray TDArray 4年前

    其实很简单,做个最简单的校验
    if(data.length==len&&data.readInt8(0)==170){
    //把代码加进去就行了
    }
    简单解释一下,因为我的tcp数据有包头0xAA,所以加了个条件更保险点,当然这样丢不丢包我不知道,但是100ms的数据丢一两个我也无所谓,目前看来没什么大问题。
    这个exbuffer实在没看懂,不怎么好用,弃了。。。(ps:node v6.0都不支持new buffer了)

    点赞 评论 复制链接分享
  • devmiao devmiao 4年前

相关推荐