2017-04-20 123 views
0

我正在编写一个程序登录到游戏中从该帐户获取一些信息。 使用用户名和密码发出发布请求后,我会在同一位置发出获取请求,以便下载所需的html源代码。 但是,在做qDebug()<<QString(reply->readAll()); 打印"\u001F?\b",而不是页面的整个源代码。Qt GET请求奇怪的响应

get reply的状态码为200,error()函数返回NetworkError(NoError)。 对于发布和获取请求,我使用从开发人员选项中的chrome的网络选项卡获得的标题信息与从以前的响应标题中获取的Cookie相结合。

我在登录后发送请求后正在做一个获取请求,因为这就是在开发人员选项中显示的实际网页中似乎发生的情况。

回答

1

响应可能会被压缩。解压缩是否会产生预期的结果?

+0

这是一个猜测。我将你的角色粘贴到一个文件中,并尝试在unix中解压缩它们的命令行并失败,但可能会丢失一个文件头。从来没有尝试过这样做。 – Evan

+0

来自https://forum.qt.io/topic/4089/solved-downloading-gzip-file-but-it-s-no-longer-compressed-when-i-try-to-open-the的评论本地文件/ 5“主题陈述:”从快速浏览Qt源代码看来,如果头文件“content-encoding”设置为“gzip”,QNetworkAccessmanager和朋友会自动解码(解压缩)压缩的数据。 “_但即使数据会被压缩,我也应该得到更长的回复,我想呢? –

+0

将ByteArray写入文件并用WinRAR打开之后,我得到了预期的输出结果。 –