mobileDeveloper
mobileDeveloper

Reputation: 894

create a http communication on blackberry 10 cascade

I'm newbie on development blackberry 10 cascades. I need to use httpget to connect on file xml and get dat from it to display it on list. There is an example can help me to make http communication or a tutoriel? All the links for http communication like this https://developer.blackberry.com/cascades/documentation/device_platform/networking/tutorial_http_comm.html didn't work I get 404

Upvotes: 0

Views: 641

Answers (2)

Shivang
Shivang

Reputation: 965

use this code...

QNetworkAccessManager* netManager = new QNetworkAccessManager();
        QUrl myurl("http://******");
        QNetworkRequest req(myurl);

    QNetworkReply* ipReply = netManager->get(req);

    QEventLoop eventLoop;
    QObject::connect(ipReply, SIGNAL(finished()), &eventLoop, SLOT(quit()));
    eventLoop.exec();
    std::cout << "finished" << std::endl; //request finished here
    requestFinished(ipReply);

Upvotes: 1

Nishant Shah
Nishant Shah

Reputation: 1586

Use QNetworkAccessManager, QNetworkRequest and QNetworkReply classes to make http connection.

QNetworkAccessManager* netManager = new QNetworkAccessManager();
QUrl myurl(yourURL);
QNetworkRequest req(url);

QNetworkReply* ipReply = netManager->get(req);
connect(ipReply, SIGNAL(finished(QNetworkReply*)), this, SLOT(onReply(QNetworkReply*)));
}

In onReply slot parse your response

if (reply) {
    if (reply->error() == QNetworkReply::NoError) {
        int available = reply->bytesAvailable();
        if (available > 0) {
            int bufSize = sizeof(char) * available + sizeof(char);
            QByteArray buffer(bufSize, 0);
            int read = reply->read(buffer.data(), available);
            response = QString(buffer);
        }
    } else {
        response =
                QString("Error: ") + reply->errorString()
                        + QString(" status:")
                        + reply->attribute(
                                QNetworkRequest::HttpStatusCodeAttribute).toString();
    }
    reply->deleteLater();
}

Visit this page for more information

Upvotes: 4

Related Questions