7
我想查看GET請求的結果。根據我的理解,這段代碼應該這樣做。我究竟做錯了什麼?Qt QNetworkReply始終爲空
void getDoc::on_pushButton_2_clicked()
{
manager = new QNetworkAccessManager(this);
connect(manager, SIGNAL(finished(QNetworkReply*)), this, SLOT(replyFinished(QNetworkReply*)));
manager->get(QNetworkRequest(QUrl("http://www.google.com")));
}
void getDoc::replyFinished(QNetworkReply *reply)
{
qDebug() << reply->error(); //prints 0. So it worked. Yay!
QByteArray data=reply->readAll();
qDebug() << data; // This is blank/empty
QString str(data);
qDebug() << "Contents of the reply: ";
qDebug() << str; //this is blank or does not print.
}
該代碼編譯並運行良好。它只是不起作用。
謝謝。 qDebug()給出了一個200的代碼,所以它的工作原理。 我現在如何訪問頁面的內容?那麼QString xml(str)能做什麼 ? – Dirk
很高興聽到它的作品!我從我的另一個項目中複製了上述代碼,並忘記刪除'QString xml(str)'行。感謝您的關注。 'QString str'應該讓你訪問頁面內容。讓我知道如果它不。 –
另請參閱QNetworkRequest :: FollowRedirectsAttribute(http://doc.qt.io/qt-5/qnetworkrequest.html),如果您使用Qt 5.6 < – ismailsunni