最近在筹划一个开源项目,为了尽可能压榨服务器性能,所以部分代码使用C++编写。程序涉及到对外的HTTP请求,正好发现QT自带这方面的库,那就直接引用吧!
下面给出一个最小的Demo,不做额外介绍,每个类的具体用法请查阅官方文档。
注意
跑Demo前需要在.pro文件中加上如下代码,以链接网络库。
QT += network
Demo:
#include <QCoreApplication>
#include <QNetworkRequest>
#include <QNetworkReply>
#include <QNetworkAccessManager>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
// 构建及发送请求
QNetworkAccessManager *manager = new QNetworkAccessManager();
QString url = "https://www.ibadboy.net";
QNetworkRequest request;
request.setUrl(QUrl(url));
QNetworkReply *pReply = manager->get(request);
// 开启一个局部的事件循环,等待页面响应结束
QEventLoop eventLoop;
QObject::connect(manager, &QNetworkAccessManager::finished, &eventLoop, &QEventLoop::quit);
eventLoop.exec();
// 获取网页Body中的内容
QByteArray bytes = pReply->readAll();
qDebug() << bytes;
return a.exec();
}
















