public void ExecuteCommand(GameSession session, ProtobufRequestInfo requestInfo) { var loginStr = GetLoginInfoStr.ParseFrom(requestInfo.Body); string loginInfoStr = string.Empty; try { loginInfoStr = common.DESEncrypt.Decrypt(loginStr.CertStr); } catch (Exception ex) { session.Logger.Error(ex); } var data = ReturnLoginInfoStr.CreateBuilder().SetLoginInfoStr(loginInfoStr).Build().ToByteArray(); session.Send(new ArraySegment <byte>(CreateHead.CreateMessage(11004, data.Length, 100003, data))); }
/// <summary> /// 根据证书获取用户登录信息 /// </summary> /// <param name="userID"></param> /// <returns></returns> public static string GetloginInfoByCertStr(string certStr) { var data = GetLoginInfoStr.CreateBuilder().SetCertStr(certStr).Build().ToByteArray(); try { var resData = new MySocket(host, port).SendReceive(CreateHead.CreateMessage(11003, data.Length, 0, data)); if (resData.FirstOrDefault() != null) { return(ReturnLoginInfoStr.ParseFrom(resData.FirstOrDefault().Data).LoginInfoStr); } } catch (Exception ex) { MyLogger.Logger.Info("请求用户登录:" + ex); } return(""); }