我创建了一个 java 服务器基础 Netty 并使用 Protostuff 处理数据,但是当我在游戏客户端基础统一中接收数据时,然后对其进行反序列化,但抛出错误:“源数据 0 中的无效字段”。我该如何解决?
Java 代码:
private Schema<SocketModel> schema=RuntimeSchema.getSchema(SocketModel.class);
LinkedBuffer buffer = LinkedBuffer.allocate(1024);
byte[] data = ProtobufIOUtil.toByteArray(message, schema, buffer);
ByteBuf buf = Unpooled.copiedBuffer(CoderUtil.IntToBytes(data.length),data);
out.writeBytes(buf);
C#代码:</p>
private SocketModel DeSerial(byte[] msg)
{
using (MemoryStream ms = new MemoryStream(msg))
{
SocketModel socketModel = Serializer.Deserialize<SocketModel>(ms);
return socketModel;
}
}