我不会发布我的代码,它是用于学校项目的,我不想冒险复制我的代码。话虽这么说,我不希望有一个具体的答案,但任何想法都将不胜感激。

无论如何,我的任务如下:我想在终端中模拟一个Web浏览器。用户提供IP地址,文件路径和端口号。然后,我必须创建get请求,将其发送到服务器,并从响应中解析文件的内容长度。最后,我将使用内容长度来计算我在文件中读取的字节数,以便我知道读取何时完成。所有这些数据都将被写入html文件。

奇怪的是,我开始在家用计算机(Linux)上进行此工作,并且能够解析内容长度并排队到html文件的开头并开始阅读。每次读取后,我从内容长度中减去读取的字节数,当我清零时,我还没有读取整个文件。但是,如果我在一台学校计算机上运行此程序(使用cygwin的Windows),它将读取整个文件。

我已使用打印语句进行调试,并确认我在正确解析内容长度,并且倒数计时也有效。它让我挠头。有任何想法吗?

谢谢

最佳答案

您如何确定尚未读取整个文件?您依靠EOF吗?如果是这样,您是否知道HTTP / 1.1连接的持久性?

08-03 20:35