diff --git a/chatclient/MainWindow.xaml.cs b/chatclient/MainWindow.xaml.cs index 63ca0b5..8f1e903 100644 --- a/chatclient/MainWindow.xaml.cs +++ b/chatclient/MainWindow.xaml.cs @@ -386,8 +386,11 @@ namespace chatclient Content = msgItem.message ?? "(无内容)", Timestamp = msgItem.timestamp ?? DateTime.Now, Alignment = msgItem.userid == UserId ? - HorizontalAlignment.Right : - HorizontalAlignment.Left + HorizontalAlignment.Right : + HorizontalAlignment.Left, + SenderColor = msgItem.userid == UserId ? + new SolidColorBrush(Colors.Blue) : + new SolidColorBrush(Colors.Black) }; mainWindow.Messages.Insert(0, chatmessage); }); @@ -470,7 +473,7 @@ namespace chatclient Buffer.BlockCopy(lengthPrefix, 0, fullMessage, 0, lengthPrefix.Length); Buffer.BlockCopy(compressedData, 0, fullMessage, lengthPrefix.Length, compressedData.Length); - log.Info($"发送数据(长度:{data.Length},压缩后长度:{lengthPrefix.Length},总体长度:{fullMessage.Length})"); + log.Info($"发送数据(长度:{data.Length},压缩后长度:{compressedData.Length},总体长度:{fullMessage.Length})"); Client?.Send(fullMessage); } private async void SendMessage_Click(object sender, RoutedEventArgs e) diff --git a/chatserver/Program.cs b/chatserver/Program.cs index f83f425..cdc2b46 100644 --- a/chatserver/Program.cs +++ b/chatserver/Program.cs @@ -58,24 +58,23 @@ namespace chatserver } static void HandleClient(Socket socket) { - const int prefixSize = sizeof(int); - byte[] prefixBuffer = new byte[prefixSize]; - int received = socket.Receive(prefixBuffer, 0, 4, SocketFlags.Peek); - if (received == 4) - { - string httpStart = Encoding.ASCII.GetString(prefixBuffer); - if (httpStart.StartsWith("GET") || httpStart.StartsWith("POST") || - httpStart.StartsWith("HEAD") || httpStart.StartsWith("HTTP")) - { - log.Warn("检测到HTTP请求,拒绝连接"); - socket.Close(); - return; - } - } try { while (true) { + const int prefixSize = sizeof(int); + byte[] prefixBuffer = new byte[prefixSize]; + int received = socket.Receive(prefixBuffer, 0, 4, SocketFlags.Peek); + if (received == 4) + { + string httpStart = Encoding.ASCII.GetString(prefixBuffer); + if (httpStart.StartsWith("GET") || httpStart.StartsWith("POST") || + httpStart.StartsWith("HEAD") || httpStart.StartsWith("HTTP")) + { + log.Warn("检测到HTTP请求,拒绝连接"); + return; + } + } //读取长度前缀 int prefixBytesRead = 0; while (prefixBytesRead < prefixSize) @@ -453,7 +452,7 @@ namespace chatserver Buffer.BlockCopy(lengthPrefix, 0, fullMessage, 0, lengthPrefix.Length); Buffer.BlockCopy(compressedData, 0, fullMessage, lengthPrefix.Length, compressedData.Length); - log.Info($"发送数据(长度:{data.Length},压缩后长度:{lengthPrefix.Length},总体长度:{fullMessage.Length})"); + log.Info($"发送数据(长度:{data.Length},压缩后长度:{compressedData.Length},总体长度:{fullMessage.Length})"); socket.Send(fullMessage); } ///