QT的qnetworkservice,QNetworkAccessManager网络请求,异步和同步阻塞封装,加入lambda和信号槽封装请求和相应。
【封装源码下载】
1:示例
- (1) 简单示例
/* 使用lambda特性 */
static HttpService http;
http.get("https://www.qt.io")
.onResopnse([](QByteArray result){ qDebug()<<"Result: "<<result; })
.onResopnse([](qint64 recv, qint64 total){ qDebug()<<"Total: "<<total<<"; Received: "<<recv; })
.onError([](QString errorStr){ qDebug()<<"Error: "<<errorStr; })
.exec();
/* 使用Qt信号与槽特性 */
http.get("https://www.qt.io")
.onResponse(this, SLOT(finish(QByteArray)))
.onResponse(this, SLOT(downloadProgress(qint64,qint64)))
.onError(this, SLOT(error(QString)))
.exec();
</