Sign in to follow this  
asoong1

Qt Help

Recommended Posts

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);

}

Share this post


Link to post
Share on other sites

rID = http.get("/index.html",pdev);

pdev is null here, so http returns the data via signals. You need to move

QTextStream stream(&file);
pdev = stream.device();

above the call to QHttp::get() or just pass file to get() instead.

Share this post


Link to post
Share on other sites

rID = http.get("/index.html",pdev);

pdev is null here, so http returns the data via signals. You need to move

QTextStream 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?

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this