diff --git a/FunGame.Server/Main.cs b/FunGame.Server/Main.cs index a10074d..7be2c52 100644 --- a/FunGame.Server/Main.cs +++ b/FunGame.Server/Main.cs @@ -206,7 +206,7 @@ bool GetGameModeList() bool Connect(ClientSocket socket, Guid token, string clientip, ref bool isDebugMode) { // 接收客户端消息 - foreach (SocketObject read in socket.ReceiveArray()) + foreach (SocketObject read in socket.Receive()) { if (read.SocketType == SocketMessageType.Connect) { diff --git a/FunGame.Server/Models/ServerModel.cs b/FunGame.Server/Models/ServerModel.cs index 1348f2e..714e8e4 100644 --- a/FunGame.Server/Models/ServerModel.cs +++ b/FunGame.Server/Models/ServerModel.cs @@ -74,7 +74,14 @@ namespace Milimoe.FunGame.Server.Model // 禁止GameModeServer调用 if ((IServerModel)this is GameModeServer) throw new NotSupportedException("请勿在GameModeServer类中调用此方法"); - SocketObject SocketObject = socket.Receive(); + SocketObject[] SocketObjects = socket.Receive(); + if (SocketObjects.Length == 0) + { + ServerHelper.WriteLine(GetClientName() + " 发送了空信息。"); + return false; + } + SocketObject SocketObject = SocketObjects[0]; + SocketMessageType type = SocketObject.SocketType; Guid token = SocketObject.Token; object[] args = SocketObject.Parameters; @@ -83,7 +90,7 @@ namespace Milimoe.FunGame.Server.Model // 验证Token if (type != SocketMessageType.HeartBeat && token != Token) { - ServerHelper.WriteLine(GetClientName() + " 使用了非法方式传输消息,服务器拒绝回应 -> [" + SocketSet.GetTypeString(type) + "] "); + ServerHelper.WriteLine(GetClientName() + " 使用了非法方式传输消息,服务器拒绝回应 -> [" + SocketSet.GetTypeString(type) + "]"); return false; }