
一、gate服务功能简述1客户端通过dispatch获取进行信息请求的gate服务地址2gate将客户端验证账号和个人信息的消息往login服务转发进行验证login验证完成后给gate 发送消息验证成功后将数据存储在客户端与gate的Tcp连接的session里面3将登陆信息发送至center服务center分配game服务地址给gate4gate后续可以对game服务发送正常game请求二、gate基本请求处理和说明switch msgId { case protocol.PlayerPingReq: 1: case protocol.VerifyLoginTokenReq: 2: case protocol.SetRealNameInfoReq: 3: case protocol.PlayerLoginReq: 4: case protocol.AskPhoneVerifyCodeReq: 5: case protocol.DeletePlayerAccountReq: 6: case protocol.BindAccountReq: 7: default: 8:1、gate 本地直接回PlayerPingRsp带回ReqTime不转发。用来保活、测 RTT。2、转给 login没有 login → 本地回SYS_ERR有则补PlayerSessionId/SessionVersion原包转 login账号鉴权入口token 验完后 session 才会AccountVerified。3、转 loginMeta 带上PlayerId、session 信息。没有 login 则本地回错。4、gate 侧先拦几道再转 center检查失败回包未过账号验证!AccountVerifiedACCOUNT_UNAUTH年龄未成年防沉迷逻辑目前注释掉—客户端版本不在 min/maxCLIENT_VERSION_TOO_LOW没有 centerSYS_ERRPlayerLoginReq时 gate 只看本地标记真正的账号校验在更早的 login 上完成通过后把生日、tags、年龄段、账号类型/名等塞进 Meta转 center由 center 分配/拉起 game。5、要手机验证码转 login同样带 session Meta。没有 login → 本地回错。6、删号转 loginMeta 带当前AccountName/AccountType。7、BindAccountReq— 绑定账号转 login除当前 session 外还带上旧账号信息PreviousAccountName/PlayerId/AccountType供绑定流程用。8、default— 其它所有业务消息统一转 该玩家所在的 game