Archive

Archives pour 12/2009

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:

Manque de temps

Voili voilou, je sais que ça fait longtemps que j’ai plus posté grand chose, mais ça va revenir… En effet, en ce moment j’ai quelques projets à faire pour l’école et des examens qui pointent gentiment le bout de leur nez. Du coup, j’ai laissé tomber provisoirement mon passage sous Debian sur mon notebook parce que je suis pas assez performant et j’ai pas le temps de me prendre la tête pour des problèmes d’adaptations Windows->Linux.

Categories: Non classé Tags: