feat: TCP协议支持protobuf序列化,保留JSON兼容
- 新增 tcp_messages_pb2.py protobuf Python绑定 - msg_handler.cpp: 新增 make_packet_pb/raw bytes打包, parse_packet_raw/raw解析 - archery_netcore.cpp: 注册 make_packet_pb/parse_packet_raw - network.py: 新增 _use_proto 标志,_make_send_packet/_parse_recv 自动选择proto/JSON - 登录version加+proto后缀标识proto模式 - protobuf序列化/反序列化失败时自动回退JSON
This commit is contained in:
@@ -7,8 +7,15 @@ namespace py = pybind11;
|
||||
|
||||
namespace netcore {
|
||||
|
||||
// 打包 TCP 数据包
|
||||
// 打包 TCP 数据包 (JSON body)
|
||||
py::bytes make_packet(int msg_type, py::dict body_dict);
|
||||
// 解包 TCP 数据包
|
||||
|
||||
// 打包 TCP 数据包 (raw bytes body, 用于 protobuf)
|
||||
py::bytes make_packet_pb(int msg_type, py::bytes body_bytes);
|
||||
|
||||
// 解包 TCP 数据包 -> (msg_type, body_dict)
|
||||
py::tuple parse_packet(py::bytes data);
|
||||
|
||||
// 解包 TCP 数据包 -> (msg_type, body_bytes) 不做 JSON 解析
|
||||
py::tuple parse_packet_raw(py::bytes data);
|
||||
}
|
||||
Reference in New Issue
Block a user