我正在为项目游戏服务器编写网络代码。我见过rAthena C代码,它使用结构构建数据包以在客户端和服务器之间进行通信。
我一直在接受来自客户端的数据包,它全部都在Buffer中。我希望能够解析缓冲区内的内容。
类似的东西:
0A 00 01 00 73 73 73 73 73 73
如果该数据包的结构是
length: 0A 00
id: 01 00
extra: 73 73 73 73 73 73
在node.js中,我将如何解析它,如果我想反过来,比如序列化它,我该怎么做?这些任务的任何库?这叫什么东西?它是protobuf吗?
还有1000多个数据包将通过代码发送和recv(序列化和解析),如果我这样做将会非常混乱:
if (packet.id == 1) // do stuff
if (packet.id == 2) // do stuff
// so on so forth
那怎么办呢?
有点类似的问题here。