HandleResult OnReceive(TcpClient sender, byte[] bytes) { string str = Encoding.UTF8.GetString(bytes, 0, bytes.Length); LogUtil.getInstance().addDebugLog("收到数据库服务器消息:" + str); JObject jo = JObject.Parse(str); string tag = jo.GetValue("tag").ToString(); int connId = Convert.ToInt32(jo.GetValue("connId")); // 请求登录接口 if (tag.CompareTo(TLJCommon.Consts.Tag_Login) == 0) { NetRespond_Login.onMySqlRespond(connId, str); } // 请求第三方登录 else if (tag.CompareTo(TLJCommon.Consts.Tag_Third_Login) == 0) { NetRespond_ThirdLogin.onMySqlRespond(connId, str); } // 请求快速注册接口 else if (tag.CompareTo(TLJCommon.Consts.Tag_QuickRegister) == 0) { NetRespond_QuickRegister.onMySqlRespond(connId, str); } return(HandleResult.Ok); }
// 处理客户端的请求 void doAskCilentReq(object obj) { // 模拟耗时操作,比如数据库操作,IO操作 // Thread.Sleep(3000); ReceiveObj receiveObj = (ReceiveObj)obj; string text = receiveObj.m_data; LogUtil.getInstance().addDebugLog("收到客户端消息:" + text); JObject jo; try { jo = JObject.Parse(text); } catch (JsonReaderException ex) { // 传过来的数据不是json格式的,一律不理 LogUtil.getInstance().addDebugLog("客户端传来非json数据:" + text); m_endStr = ""; return; } if (jo.GetValue("tag") != null) { string tag = jo.GetValue("tag").ToString(); // 请求登录接口 if (tag.CompareTo(TLJCommon.Consts.Tag_Login) == 0) { NetRespond_Login.doAskCilentReq_Login(receiveObj.m_connId, text); } // 请求第三方登录 else if (tag.CompareTo(TLJCommon.Consts.Tag_Third_Login) == 0) { NetRespond_ThirdLogin.doAskCilentReq_ThirdLogin(receiveObj.m_connId, text); } // 请求快速注册接口 else if (tag.CompareTo(TLJCommon.Consts.Tag_QuickRegister) == 0) { NetRespond_QuickRegister.doAskCilentReq_QuickRegister(receiveObj.m_connId, text); } // 请求服务器在线玩家信息接口 else if (tag.CompareTo(TLJCommon.Consts.Tag_OnlineInfo) == 0) { NetRespond_OnlineInfo.doAskCilentReq_OnlineInfo(receiveObj.m_connId, text); } // 检查版本 else if (tag.CompareTo(TLJCommon.Consts.Tag_CheckVerisionCode) == 0) { NetRespond_CheckVerisionCode.doAskCilentReq_CheckVerisionCode(receiveObj.m_connId, text); } // 检查版本 else if (tag.CompareTo(TLJCommon.Consts.Tag_LoginDataStatistics) == 0) { NetRespond_LoginDataStatistics.doAskCilentReq_LoginDataStatistics(receiveObj.m_connId, text); } else { LogUtil.getInstance().addDebugLog("未知Tag:" + tag); } } else { // 传过来的数据没有tag字段的,一律不理 LogUtil.getInstance().addDebugLog("客户端传来的数据没有Tag:" + text); return; } }