c++ - Linux 上 HTML Web 客户端的 QT REST 开发

标签 c++ linux qt rest real-time

在 Linux 系统中我们需要将数据流化为 JSON 格式以进行实时数据通信。例如,我们正在通过网络客户端调整音量,而不是它应该发布到服务器,反之亦然。 使用 QT 构建休息开发的最佳方式可能也是与其他模块通信的最佳方式。

最佳答案

在Qt 5 中添加了对JSON 的直接支持。检查可用的类here .

要与 Web 部件通信,您应该使用 QNetworkManagerAccess类。

这是如何实现的示例(未测试):

QVariantMap top;
top.insert( "key1", QString( "value1" ) );
top.insert( "key2", QString( "value2" ) );
const QJsonDocument doc = QJsonDocument::fromVariant(top);
QByteArray postData = doc.toJson();

QNetworkAccessManager* manager = new QNetworkAccessManager(this);

QNetworkRequest req;
req.setUrl(QUrl("http://www.test.com"));
req.setHeader(QNetworkRequest::ContentTypeHeader,"application/json");

QNetworkReply *reply = manager->post(req,postData);
...

关于c++ - Linux 上 HTML Web 客户端的 QT REST 开发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26116869/

相关文章:

c++ - 我可以删除使用 memcpy() 复制的类指针吗?

c++ - 类型定义枚举的问题。和 visual studio 2005 中的错误

c++ - 从 C 写入 .txt

linux - Git - 文件夹区分大小写的问题

linux - madvise() 中 MADV_USERFAULT 标志的状态是什么?

c++ - 为什么不可能将变量 move 到另一个 std::thread

linux - Bash 脚本 : perform actions based on file contents

Qt/OpenGL - 在 3D 场景上绘制 2D "scale line"

Qt设计器: Setting fixed size of QLabel

c++ - 将 QT 用于 GUI c++