为了账号安全,请及时绑定邮箱和手机立即绑定

调试自定义服务器套接字应用程序

调试自定义服务器套接字应用程序

C#
湖上湖 2021-04-12 08:30:17
我一直在努力调试C#套接字应用程序的问题。该应用程序是我正在从事的大学作业的一部分。分配的范围是使用原始套接字构建Web服务器和游戏/应用程序服务器。就我而言,网络服务器提供静态文件并充当游戏服务器的代理。服务文件似乎运行良好,但是将请求转发到游戏服务器时,会出现数据传输问题。完整的源代码可在GitHub上获取以供参考。但是我认为有问题的区域是该区域,该区域尝试从游戏服务器读取响应正文以响应Web服务器的请求。以下是相关代码:if (header.ContainsKey("content-length")){    var bodyLength = Convert.ToInt32(header["content-length"]);    Console.WriteLine($"Receiving body from game server.  Expecting {bodyLength} bytes");    body = ReceiveBodyData(socket, bodyLength);    Console.WriteLine($"Finished receiving body from game server.  Received {body.Length} bytes.");}当它执行此代码时,第一条消息将写入控制台,但是第二条消息从不打印,因为该方法ReceiveBodyData从不返回(最终在试图读取主体数据的无限循环中结束)。检查游戏服务器的输出,我发现连接从头开始是关闭的,但是我不确定这是否会破坏接收者读取数据的能力。任何人都可以协助调试此问题,请仔细确认这是我的工作,因此理想情况下,请不要编写大量代码。
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 98 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信