2012-11-09 88 views
2

我正在寻找一个非常简单的POST请求到一个网页。该页面是在PHP中,将采取任何张贴检查它对数据库,然后回应一个关键,如果该项目在数据库中。Qt简单发布请求

我不知道如何在Qt中使用post请求或如何获取返回的信息并将其存储回Qt中的变量。任何帮助将受到高度赞赏,因为我从Qt的一个空白处开始。

我看了看其他的例子:

https://stackoverflow.com/questions/11348359/qt-https-post-request

How can I POST data to a url using QNetworkAccessManager

,但我看不出如何存储来自PHP脚本的响应

回答

6

连接QNetworkAccessManager信号完成到您的插槽,并使用QNetworkReply您应该阅读所有的竞争网页的nts。

下面是一个可以很容易地适用于post方法的get例子。

void MainWindow::on_pushButton_clicked() 
{ 
    QNetworkAccessManager * mgr = new QNetworkAccessManager(this); 
    connect(mgr,SIGNAL(finished(QNetworkReply*)),this,SLOT(onfinish(QNetworkReply*))); 
    connect(mgr,SIGNAL(finished(QNetworkReply*)),mgr,SLOT(deleteLater())); 

    mgr->get(QNetworkRequest(QUrl("http://www.google.com"))); 

} 

void MainWindow::onfinish(QNetworkReply *rep) 
{ 
    QByteArray bts = rep->readAll(); 
    QString str(bts); 
    QMessageBox::information(this,"sal",str,"ok"); 

}