|
本帖最后由 angelus 于 2017-12-18 14:43 编辑
首先我不得不说,你用错代码了
m_manager->get(mRequest);//发送请求
connect(m_manager, SIGNAL(finished(QNetworkReply*)), this, SLOT(slot_replayFinished(QNetworkReply*)));
参考下这个写法,信号槽连接的对象不对.
p_reply = p_manager->post(request,byte);
connect(p_reply , SIGNAL(finished()) , this , SLOT(onFinished()));
你的第一种写法,运气好,可以在你发出的那一瞬间finished的时候有数据可以读取,运气不好有延迟,会是空数据对象的.
正确写法应该是捕捉QNetworkReply的finished信号,这意味了调用一定有返回了!
m_manager的finished仅仅意味着,发送信息成功了,但这个过程是异步的,所以返回的数据可能还在路上! |
|