我正在使用 qt5.3,在发布之前我搜索了很多。
我想从中读取数据QNetworkReply
。我有一个QWebView
并且我还需要读取 http 响应来QWebView
显示网页。我需要的只是记录网页内容或对 http 帖子的任何响应。
问题是QNetworkReply
只能读取一次的东西。
如果我
readAll()
在选择readyRead()
信号时打电话,我会得到完整的数据。但它会被清除所以QWebView
什么都不显示(它不会得到任何回复数据)。或者如果我选择
finished()
信号,因为数据已经被QWebView
(或QNetworkAccessManager
)读取,如果我readAll()
在这里调用,我什么也得不到。是否有某个地方QNetworkReply
、经理或任何班级存储我仍然可以读取的数据?
在 #1 中,如果我调用peek()
. 此功能不会清除响应数据。但是如果响应体很大,它就行不通了。这QNetworkReply
是一个顺序的东西,我既不能知道它的数据,也不能比缓冲的读得更远。
我不知道如何处理这个......
我只想监视和记录在我的QWebView
...上提出的任何请求的请求和响应正文。
编辑:请注意,我要从响应中读取的数据高达 1MB,因此如果不进一步阅读就无法窥视整个数据。