Skip to main content

Module handlers_shared

Module handlers_shared 

Source

Structs§

MultiLangName
多语言名称(手动解析,不通过 prost)

Enums§

SrpcDecodeError
SRPC envelope 解码失败原因(v1.4.106 codex 1110 F3 [P2] 修:不再返回 default)

Functions§

decode_backend_proto
解码后端响应 protobuf,兼容可能存在的 4 字节长度前缀
decode_cmd5121_groups
CMD5121 专用解码:SRPC field 5 包含的是 repeated GroupInfo(不是 GetGroupListResp)。
decode_request_or_error
decode_srpc_or_direct
统一 SRPC 封装解码:先尝试标准解码,如果结果无效则尝试 SRPC field 5 解码。
extract_field5_message
从 SRPC 封装的响应体中提取 field 5 的数据并解码为指定消息类型。 后端某些命令(CMD 5120/5121)的响应被 SRPC envelope 包装,实际数据在 field 5。
extract_field5_validated
从 SRPC field 5 解码消息,使用 validator 验证结果。 如果 field 5 直接解码无效,还会尝试从 field 5 → field 4 提取(嵌套 SRPC)。
extract_repeated_field
从 raw protobuf 中提取指定 field number 的所有 LengthDelimited 值, 然后将每个值解码为 prost::Message。 用于处理后端使用了不同于 proto 文件定义的 field number 的情况。
make_error_response
构建错误响应
make_error_response_with_code
v1.4.34 UX-2:构建带显式 err_code 的错误响应(handler 层短路用)。
make_standard_error_response
构建标准 handler 错误响应(ret_type=-1)。
make_success_response
构建成功响应(ret_type=0, s2c 为 protobuf 编码后的 bytes)