Q:

Qt + search engine API

I need google (or other engine) search in my desktop program. 
Could you please give me an example how to send a POST request to API and get the answer. 
I use Qt and C++. 
For example this code doesn't work (it's about yandex API):
QString* query = new QString("<?xml version=""1.0"" encoding=""UTF-8""? >"
                             "<request><query>" + ui->search_le->text().toUtf8() +
                             "</query><groupings><groupby attr=""d"""
                             "mode=""deep""groups-on-page=""10""docs-in-group=""1"" />"
                             "</groupings></request>");

QUrl apiurl = QUrl("http://xmlsearch.yandex.ru/xmlsearch?user=*******&"
                   "key=03.*******:**************f01e29f007af7994e951");

manager = new QNetworkAccessManager();
request = new QNetworkRequest(apiurl);
reply = manager->post(*request, query->toUtf8());

QString answer = QString::fromUtf8(reply->readAll());

And I really don't know how to find the problem. 
Thanks all who will be able to help me. 

A:

You are on the right track.  Read about Signals and slots in Qt.  http://doc.qt.io/archives/qt-4.7/signalsandslots.html
You have to connect QNetworkAccessManager's finished() signal to your own slot and then call reply->readAll();
Do this before you call the post method. 
connect(manager, SIGNAL(finished(QNetworkReply*)),
     this, SLOT(replyFinished(QNetworkReply*)));

Then implement the replyFinished method in your class. 
MyClass::replyFinished(QNetworkReply* reply)
{
 QString answer = QString::fromUtf8(reply->readAll());     
}

