進(jìn)程通過(guò)QNetworkAccessManager 進(jìn)行http請(qǐng)求。代碼如下:
但當(dāng)主進(jìn)程開(kāi)辟線程來(lái)執(zhí)行http請(qǐng)求時(shí),卻無(wú)法成功。
此時(shí)會(huì)出現(xiàn)程序運(yùn)行崩潰、沒(méi)有執(zhí)行http請(qǐng)求任務(wù)等情況。
簡(jiǎn)單說(shuō)一下注意事項(xiàng):
1 線程中的run函數(shù)返回后線程即結(jié)束,根本無(wú)法等到reply的finished信號(hào)。因此需要加入QEventLoop來(lái)掛起線程。
2 通過(guò)connect設(shè)置信號(hào)槽,需要QObject的支持,因此在構(gòu)造函數(shù)里與頭文件中需要修改代碼。最終的修改代碼如下:
這樣,就可以對(duì)http進(jìn)行請(qǐng)求了。
但在真正的執(zhí)行中,當(dāng)關(guān)閉界面程序時(shí)出現(xiàn)彈出框,提示:This application has requested the Runtime to terninate it in an unusual way.
原因還在查找中。