与QtWebKit的IM初学者我建立简单的web框架是加载的页面(服务器端),当从这一页我提交的数据我想赶上从在C服务器的响应串++身边,我该怎么办呢?
我用Qt(我是新手)修补了一下,找到了一种方法来捕获WebKit下载的所有资源.这是如何做:
1)创建自己的QNetworkAccessManager子类
2)在派生类中,覆盖虚函数createRequest
3)调用基类实现以获取响应对象.之后,您可以查看URL(或其他参数)并确定是否需要捕获该特定资源
4)如果你这样做 - 将readyRead信号连接到一个将捕获数据的插槽
5)在该槽中调用peek函数读取数据,以便WebKit也可以获取数据
6)创建QWebPage对象后,调用setNetworkAccessManager并从步骤1)传递新创建的子类实例
就是这样 - 享受!
您可以使用QNetworkReply类来实现它。QWebPage实例具有networkAccessManager()返回QNetworkAccessManager能够发送请求和接收响应的实例的方法。
你需要寻找它的finished信号。
void QNetworkAccessManager::finished ( QNetworkReply * reply )
每当待处理的网络回复完成时,就会发出此信号。回复参数将包含指向刚刚完成的回复的指针。
QNetworkReply反过来,它是 的继承者,QIODevice因此您可以调用它的readAll()方法来接收响应数据。
您可能还会发现这个问题很有用。
| 归档时间: |
|
| 查看次数: |
2401 次 |
| 最近记录: |