In the constructor, we have connected the manager's finish()
signal to the finished()
slot of the MainWindow
class. It will thus be called after the request has been posted:
void MainWindow::finished(QNetworkReply *reply) { if (m_reply != reply) { reply->deleteLater(); return; }
First, we check whether the reply that was passed is the one that we have requested through m_nam
. If this is not the case, we delete reply
and exit the function. This can happen if a reply was aborted by the sendRequest()
slot:
m_reply = 0; if (reply->error()) { ui->result->setPlainText(reply->errorString()); reply->deleteLater(); return; }
Since we are now sure that it is our request, we set m_reply
to null because we have handled it and do not need this information anymore. Next we check whether an error occurred, and if it did, we put the reply's error string in the text edit, delete reply, and exit the function:
const QByteArray content...