Я хочу увидеть результаты запроса 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