QT5.14 用QNetworkRequest对象进行GET请求与处理的示例代码,C++
时间: 2024-10-16 19:15:53 浏览: 7
在Qt 5.14中,你可以使用`QNetworkAccessManager`来进行网络请求,包括GET请求。以下是一个简单的示例代码,展示如何创建一个`QNetworkRequest`对象并发送GET请求:
```cpp
#include <QCoreApplication>
#include <QNetworkAccessManager>
#include <QNetworkReply>
int main(int argc, char *argv[])
{
QCoreApplication app(argc, argv);
// 创建QNetworkAccessManager实例
QNetworkAccessManager manager;
// 使用URL构建QNetworkRequest对象
QUrl url("http://example.com/api/data");
QNetworkRequest request(url);
// 发送GET请求
connect(&manager, &QNetworkAccessManager::finished, this, [reply = manager.get(request)](QNetworkReply *networkReply) {
if (networkReply->error() == QNetworkReply::NoError) {
QByteArray data = networkReply->readAll();
QString jsonData = data.toUtf8().constData(); // 解析数据
// 处理返回的数据
// ...
// 关闭回复
networkReply->deleteLater();
} else {
qWarning() << "Error: " << networkReply->errorString();
}
});
// 启动网络请求
manager.start(request);
return app.exec();
}
```
在这个例子中,我们首先创建了`QNetworkAccessManager`的实例,然后构建了一个指向目标服务器的`QNetworkRequest`。当请求完成时,我们会检查错误并获取返回的数据,然后对其进行处理。
阅读全文