如果您要将代码中的多层结构改为单层结构,可以将mainJson
中的键值对直接插入到lygDeviceStatus
对象中,而不是创建一个新的嵌套对象。以下是修改后的代码示例:
QJsonObject lygDeviceStatus;
lygDeviceStatus.insert("id", 1);
lygDeviceStatus.insert("steel", 1);
lygDeviceStatus.insert("trainNoDetect", 1);
lygDeviceStatus.insert("radar", 1);
lygDeviceStatus.insert("storageServer", 1);
lygDeviceStatus.insert("ll", 1);
lygDeviceStatus.insert("lr", 1);
lygDeviceStatus.insert("ml", 1);
lygDeviceStatus.insert("mr", 1);
lygDeviceStatus.insert("tl", 1);
lygDeviceStatus.insert("tr", 1);
lygDeviceStatus.insert("createTime", formattedDateTime);
QJsonDocument doc(lygDeviceStatus); // 直接使用单层结构对象
QByteArray array = doc.toJson(QJsonDocument::Compact);
QNetworkRequest request;
request.setUrl(QUrl(ui->lineEdit_2->text()));
request.setHeader(QNetworkRequest::ContentTypeHeader, QVariant("application/json"));
request.setRawHeader("Authorization", ui->lineEdit_3->text().toLatin1());
m_accessManagerTask->post(request, array);
这样修改后,JSON数据就只有一个单层的结构,其中包含了原来 mainJson
中的所有键值对。
内容由零声教学AI助手提供,问题来源于学员提问