Accueil > Non classé > Qt Creator : Requête GET

Qt Creator : Requête GET

Bon, je me prends la tête à vouloir récupérer le contenu d’une page html en C++ avec Qt. Pour l’instant j’arrive à récupérer uniquement le header à l’aide de ces codes:

{
QHttp *http = new QHttp(this);
http->setHost("www.gagou.ch");
http->get("/test/test.html");

connect(http,SIGNAL(readyRead(QHttpResponseHeader)),this,SLOT(read(QHttpResponseHeader)));
}

void example::read(QHttpResponseHeader response)
{
qDebug()<<response.toString();
}

Ou comme ceci:

{
QHttpRequestHeader header = QHttpRequestHeader("GET", "/test/test.html");
header.setValue("Host","www.gagou.ch");

http = new QHttp(this);
http->setHost("www.gagou.ch");
http->request(header);

connect(http,SIGNAL(requestFinished(int,bool)),this,SLOT(requestFinished(int,bool)));
}

void example::requestFinished(int a, bool b)
{
qDebug()<<http->lastResponse().toString();
}

[EDIT] Finalement j’y suis arrivé, je cherchais à la mauvaise place, c’est pas QHttp mais QNetworkAccessManager qu’il faut utiliser:

{
QNetworkAccessManager *manager = new QNetworkAccessManager(this);
connect(manager, SIGNAL(finished(QNetworkReply*)),
this, SLOT(requestFinished(QNetworkReply*)));

manager->get(QNetworkRequest(QUrl("http://www.megaupload.com/?d=DHW86DGI")));
}

void example::requestFinished(QNetworkReply *reply)
{
qDebug()<<reply->readAll();

}

Categories: Non classé Tags:
  1. Pas encore de commentaire
  1. Pas encore de trackbacks