[英]Web service in blackberry 10
我現在正在使用Cascades(C ++編程語言)開發BlackBerry 10應用程序。 誰能告訴我如何在BlackBerry 10:Cascades中撥打網絡服務電話? 我只是一個初學者,所以我真的什么都不知道。 感謝您的回答
void GetWeb::start(const QString &str)
{
QNetworkRequest request = QNetworkRequest();
request.setUrl(QUrl(str));
QNetworkAccessManager *networkAccessManager = new QNetworkAccessManager(this);
connect(networkAccessManager, SIGNAL(finished(QNetworkReply*)), this, SLOT(requestFinished(QNetworkReply*)));
networkAccessManager->get(request);
}
void GetWeb::requestFinished(QNetworkReply* reply)
{
if (reply->error() == QNetworkReply::NoError)
{
emit complete(reply->readAll());
}
reply->deleteLater();
}
在這種情況下,我將發出的結果字符串作為信號發出,但是如果您願意,也可以直接使用reply-> readAll()字符串...
使用Qt發送網絡請求有一些活動的環節。 這是Qt使用的示例:
QNetworkAccessManager *manager = new QNetworkAccessManager(this);
connect(manager, SIGNAL(finished(QNetworkReply*)),
this, SLOT(replyFinished(QNetworkReply*)));
manager->get(QNetworkRequest(QUrl("http://qt-project.org")));
因此,您要做的是創建一個QNetworkAccessManager
對象,該對象處理發送請求和處理響應的實際過程。 然后,您將QNetworkRequest
完成后管理器發出的信號連接到您創建的名為replyFinished
的插槽,該插槽將QNetworkReply *
作為參數,可能看起來像這樣:
void MyClass::replyFinished(QNetworkReply *serverResponse)
{
//do something with the response
}
然后,您可以使用管理器的get
方法傳遞您的QNetworkRequest
,您可以像創建該QNetworkRequest
一樣創建它,也可以單獨創建。 就是這樣,這是一個最小的示例,該示例將向http://qt-project.org
發送HTTP請求並返回包含頁面中數據的響應,您可以從那里擴展出執行諸如JSON或XML。
來自以下示例: QtNetwork文檔
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.