QNetworkReply没有数据

时间:2016-01-04 00:06:39

标签: c++ windows qt qwebview

我有一个QWebView,我正在通过连接来查看网络请求:

  QObject::connect(page()->networkAccessManager(),
                     SIGNAL(finished(QNetworkReply*)),
                     this,
                     SLOT(networkLoaded(QNetworkReply*)));

然后:

void browserControl::networkLoaded(QNetworkReply *reply)
{
    const QUrl reqUrl = reply->request().url();
    qDebug() << "url = " << reqUrl;

    QByteArray array = reply->readAll();
    QString data = QString::fromUtf8(array.data(), array.size());
    int statusCode = reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).value<int>();

 qDebug() << "data = " << data;
    qDebug() << "http code = " << statusCode;
}

但是,如果statusCode200,则数据始终为空。 browserControl类是从QWebView类继承的。

1 个答案:

答案 0 :(得分:1)

您没有数据,因为QWebPage在您的广告位被调用之前读取了所有数据