确实已经说过,还有很多工作要做,因为Node必须获取该缓冲区,然后将其推入v8
/将其转换为字符串。但是,在缓冲区上执行toString()并没有更好的效果。据我所知,目前还没有很好的解决方案,尤其是如果您的最终目标是找到一个字符串并胡闹的话。Ryan提到@nodeconf是需要完成工作的领域之一。
至于定界符,您可以选择任何您想要的。许多二进制协议选择包含固定的标头,这样您就可以将事物放到正常的结构中,而该结构通常包含一个长度。这样,您就可以分割一个已知的标头并获取有关其余数据的信息,而不必遍历整个缓冲区。使用这样的方案,可以使用以下工具:
- 节点缓冲区-https: //github.com/substack/node-binary
- node-ctype- https://github.com/rmustacc/node-ctype
顺便说一句,可以通过数组语法访问缓冲区,也可以使用.slice()将其分割。
最后,在这里检查:https :
//github.com/joyent/node/wiki/modules-找到一个解析简单tcp协议并且看起来做得很好的模块,并阅读一些代码。



