asoong1 Posted July 22, 2010 Report Share Posted July 22, 2010 I took a stab at creating a program using Qt that would use http to get data from a website and store it in a file. All parts seem to be accounted for but the returned "result.html" file is always blank. Does anybody know why? Here's my code below:I bound it to a command that executes when a button on the GUI is pushed:int rID = 0;void MainWindow::buttonClickHandler2(){ ui->CurModeOUT->setText(ui->pushButton_2->text()); QHttp http; QIODevice*pdev = 0; QFile file("C:\\result.html"); file.open(QIODevice::ReadWrite); QHttpRequestHeader header ("GET", "http://finance.yahoo.com/"); header.setValue("Host", "www.yahoo.com"); http.setHost("www.yahoo.com", 80); rID = http.get("/index.html",pdev); //rid = http.request(header, 0, pdev); printf("rid %d\n",rID); QTextStream stream(&file); pdev = stream.device(); file.flush(); file.close(); QString requestID = QString::number(rID); ui->DimPctOUT->setText(requestID);} Quote Link to post Share on other sites
jcl Posted July 23, 2010 Report Share Posted July 23, 2010 rID = http.get("/index.html",pdev);pdev is null here, so http returns the data via signals. You need to moveQTextStream stream(&file);pdev = stream.device();above the call to QHttp::get() or just pass file to get() instead. Quote Link to post Share on other sites
asoong1 Posted July 23, 2010 Author Report Share Posted July 23, 2010 rID = http.get("/index.html",pdev);pdev is null here, so http returns the data via signals. You need to moveQTextStream stream(&file);pdev = stream.device();above the call to QHttp::get() or just pass file to get() instead.Hmm, I tried both solutions but the output file result.html is still blank when i open it. Is the path incorrect? Or my use of the QHttp get? Quote Link to post Share on other sites
asoong1 Posted July 23, 2010 Author Report Share Posted July 23, 2010 Should I try using QUrlOperator instead? Could you show me how to do that? The API says I need to registed QHttp using qInitNetworkProtocols(). Anyideas? Quote Link to post Share on other sites
asoong1 Posted July 26, 2010 Author Report Share Posted July 26, 2010 bump Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.