问题描述
这是我的代码。它从数据库中检索所需的信息,但它不会进入 foreach 循环,因此我无法将响应数据包含到 saldo 属性中。
void engine::makeSaldoRequest(){
QString site_url="http://localhost:3000/tili/1";
QString credentials="automaatti1:raha123";
qnetworkrequest request((site_url));
request.setHeader(qnetworkrequest::ContentTypeHeader,"application/json");
QByteArray data = credentials.toLocal8Bit().toBase64();
QString headerData = "Basic " + data;
request.setRawHeader( "Authorization",headerData.toLocal8Bit());
qDebug() << "haetaan saldo";
manager = new QNetworkAccessManager(this);
connect(manager,SIGNAL(finished (QNetworkReply*)),this,SLOT(saldoReplySlot(QNetworkReply*)));
saldoReply = manager->get(request);
}
void engine::saldoReplySlot(QNetworkReply *saldoreply){
QByteArray response_data=saldoreply->readAll();
qDebug() << response_data;
QJsonDocument json_doc=QJsonDocument::fromJson(response_data);
QJsonArray json_array=json_doc.array();
QString saldo;
foreach(const QJsonValue &value,json_array){
QJsonObject json_object=value.toObject();
saldo+=QString::number((json_object["idtili"].toInt()))+" "+
json_object["tilin_saldo"].toString()+"\r\n";
qDebug() << "loopissa";
}
qDebug() << "lähetetään signaali exelle missä saldo on";
emit saldoToExe(saldo);
qDebug() << saldo;
manager->deleteLater();
saldoReply->deleteLater();
saldoreply->deleteLater();
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)