"#include "procession.h"\n"#include "ui_procession.h"\n"#include \n"#include \n"#include \n\n"Procession::Procession(int userid,QWidget *parent) :\n" QWidget(parent),\n" ui(new Ui::Procession),\n" userid(userid)\n"{\n" ui->setupUi(this);\n" setWindowTitle("服务器通信");\n" setFixedSize(600,400);\n" connect(ui->connectServerBtn,&QPushButton::clicked,this,={\n" this->connectToServer();\n" });\n\n"}\n\n"Procession::~Procession()\n"{\n" delete ui;\n"}\n\n"void Procession::connectToServer()\n"{\n" QJsonObject json;\n" json["userid"] = this->userid;\n\n" QJsonDocument doc(json);\n" QByteArray postData = doc.toJson();\n\n" QNetworkRequest request(QUrl(ui->serverIP->text()));\n" request.setHeader(QNetworkRequest::ContentTypeHeader, "application/json");\n\n" networkManager->post(request, postData);\n"}\n\n"void Procession::handleServerResponse(QNetworkReply *reply)\n"{\n" if (reply->error() == QNetworkReply::NoError) {\n" QByteArray response = reply->readAll();\n" ui->message->setText(response);\n" } else {\n" ui->message->setText("连接失败!");\n" }\n\n" reply->deleteLater();\n"} "// 这段代码是一个简单的服务器通信示例。在构造函数中,传入了一个用户ID,并连接了一个按钮的点击事件,\n"// 当点击按钮时会调用connectToServer()方法进行服务器连接。\n\n"// connectToServer()方法首先创建一个QJsonObject对象,并将用户ID添加到其中。\n"// 然后使用QJsonDocument将QJsonObject转换为QByteArray类型的数据。\n"// 接下来创建一个QNetworkRequest对象,设置请求的URL为输入的服务器IP地址。\n"// 设置请求的ContentType为application/json。\n"// 最后使用QNetworkAccessManager的post()方法发送请求。\n\n"// handleServerResponse()方法是处理服务器响应的槽函数。\n"// 首先判断响应是否有错误,如果没有错误,则读取响应的数据并显示在界面上。\n"// 如果有错误,则在界面上显示连接失败的消息。\n\n"// 总体而言,这段代码实现了简单的服务器通信,通过发送POST请求将用户ID发送到指定的服务器,并将服务器的响应显示在界面上。\n"

Qt 服务器通信示例:使用 QNetworkAccessManager 发送 JSON 数据

原文地址: https://www.cveoy.top/t/topic/qhmD 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录