我的服务器向客户端发送响应或将消息转发给另一个客户端取决于消息内容。 我需要使用8字节消息:大括号之间有6个加密字节,例如:
0x3C 0xE1 0xE2 0xE3 0xE04 0xE5 0xE6 0x3E
其中0x3C表示<标记为开放帧标记,0x3E表示>标志作为关闭帧标记。
如果内部6个加密字节(0xE1 0x02 0x03 0x04 0x05 0x06)成功解密,则数据再次包含相同的标记:
0x3C 0x3C 0x02 0x03 0x04 0x05 0x3E 0x3E
所以我得到4个字节的有效载荷(0x02 0x03 0x04 0x05)。
我已经编写了一个FrameDecoder,但现在我无法决定是否删除大括号字节:
答案 0 :(得分:1)
我建议你将解密和转换分成两个处理程序。 第一个责任就是解密原始数据。第二种是将原始数据转换为纯消息。这种解决方案的好处是,如果有人想要在以后更改解密方法,他可以只需要更改第一个处理程序而不影响第二个处理程序。同样,转换方法也可以在不影响解密的情况下进行更改。