为什么qt不进入foreach循环?

问题描述

这是我的代码。它从数据库中检索所需的信息,但它不会进入 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 (将#修改为@)