发布于 2016-01-03 08:25:07 | 769 次阅读 | 评论: 0 | 来源: PHPERZ
Qt 跨平台的C++图形用户界面应用程序框架
Qt是一个1991年由奇趣科技开发的跨平台C++图形用户界面应用程序开发框架。它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器。Qt是面向对象的框架,使用特殊的代码生成扩展(称为元对象编译器(Meta Object Compiler, moc))以及一些宏,易于扩展,允许组件编程。
今天领导让研究一下QT程序请求我写的网站后台数据,本人QT小白只写过三个小工具,所以到网上找了一些资料并写了一个小demo:
HTTP请求在QT中相应的类为NetworkRequest,HTTP响应的类为NetworkReply。发送请求需要创建一个管理器实例QNetworkAccessManager。可以调用它的get、post等方法发送get、post等HTTP请求。
class HttpTest : public QObject{
Q_OBJECT
public:
void testGet(); //发送http请求
public slots:
void replyFinish(QNetworkReply*); //用于处理响应返回的数据
};
void HttpTest::testGet(){
QNetworkAccessManager* manager = new QNetworkAccessManager(this);
QNetworkRequest request;
request.setUrl(QUrl("http://192.168.1.1:8080/pvstation/status"));
QNetworkReply* reply = manager->get(request);
connect(manager, SIGNAL(finished(QNetworkReply*)), this, SLOT(replyFinish(QNetworkReply*)));
}
void HttpTest::replyFinish(QNetworkReply* reply)
{
qDebug()<<reply->readAll();
}