QBuffer buffer; m_pHttp = new QHttp(); m_pHttp->setHost("www.grio.ru"); m_pHttp->get("/myip.php", &buffer); QString str = QString( buffer.buffer() ); ui->label->setText(str);
QBuffer buffer; QNetworkAccessManager *m_pHttp = new QNetworkAccessManager(this); connect(m_pHttp, SIGNAL(finished(QNetworkReply*)), this, SLOT(replyFinished(QNetworkReply*))); m_pHttp->get(QNetworkRequest(QUrl("http://www.grio.ru/myip.php"))); // m_pHttp.get("/myip.php", &buffer); //SIGNAL(done(bool)); QString str = QString( buffer.buffer() ); str = QString( buffer.buffer() ); ui->label->setText(str); buffer.close();}void MainWindow::replyFinished(QNetworkReply*){ }
C++ (Qt)QString get(){ QNetworkAccessManager manager; QNetworkReply *reply = manager.get( QNetworkRequest( QUrl( "http://www.grio.ru/myip.php" ) ) ); // Запускаем цикл обработки событий и ожидаем заверщение запроса QEventLoop loop; QObject::connect( reply, SIGNAL( finished() ), &loop, SLOT( quit() ) ); loop.exec(); // Проверяем состояние ответа if( reply->error() != QNetworkReply::NoError ) return QString(); // Ошибка - возвращаем пустую строку // Читаем полученные данные в data QByteArray data = reply->readAll(); // Разбираем полученные данные, находим свой ip и возвращаем его // ... return strIP;}