以下是一个使用 Qt 实现 Restful API 的示例:
#include <QtCore/QCoreApplication>
#include <QtNetwork/QNetworkAccessManager>
#include <QtNetwork/QNetworkRequest>
#include <QtNetwork/QNetworkReply>
#include <QtCore/QUrlQuery>
#include <QtCore/QDebug>
int main(int argc, char *argv[])
{
QCoreApplication app(argc, argv);
// 创建一个 QNetworkAccessManager 对象,用于发送网络请求
QNetworkAccessManager networkManager;
// 创建一个 GET 请求
QUrl url("https://jsonplaceholder.typicode.com/posts/1");
QNetworkRequest request(url);
// 发送请求并等待响应
QNetworkReply* reply = networkManager.get(request);
while (!reply->isFinished()) {
app.processEvents();
}
// 检查响应状态码是否为 200 OK
if (reply->error() == QNetworkReply::NoError) {
qDebug() << "Response status code:" << reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt();
// 获取响应数据
QByteArray response = reply->readAll();
qDebug() << "Response data:" << response;
} else {
qDebug() << "Error:" << reply->errorString();
}
// 释放资源
reply->deleteLater();
return app.exec();
}
这个示例演示了如何使用 Qt 中的 QNetworkAccessManager 类来发送 RESTful API 请求,并获取响应数据。在这个示例中,我们创建了一个 GET 请求来获取 JSONPlaceholder API 的第一篇帖子内容。然后,我们等待响应并检查响应状态码,如果状态码为 200 OK,则获取响应数据。最后,我们释放资源并退出程序。