• 4680阅读
  • 2回复

百折不挠继续问QHTTP [复制链接]

上一主题 下一主题
离线goldbalance
 
只看楼主 倒序阅读 楼主  发表于: 2009-11-15
— 本帖被 XChinux 从 General Qt Programming 移动到本区(2011-01-02) —
请看看以下代码,为什么下载的jsp文件0kb,是不是没有完全获得就关闭程序了

#include <QCoreApplication>
#include <QtNetwork>
#include <QHttp>
#include <QUrl>
#include <stdio.h>

int main(int argc, char **argv)
{
QCoreApplication app(argc, argv);
QHttp *http;http=new QHttp();
QUrl *url=new QUrl("http://127.0.0.1:8080/webtest/test2.jsp?selection=composer&composer=Lee Actor");

QFileInfo fileinfo(url->path());
QFile *file = new QFile(fileinfo.fileName());
file->open(QIODevice::WriteOnly);
http->setHost(url->host(),80);
int httpGetId=http->get(url->path(),file);
qDebug() << httpGetId;
http->close();
return app.exec();
}
离线pbcljf
只看该作者 1楼 发表于: 2009-12-06
url->path(),返回 /webtest/test2.jsp 后面的参数被截断了,
int httpGetId=http->get(url->path(),file);
改为int httpGetId=http->get("/webtest/test2.jsp?selection=composer&composer=Lee Actor“,file);
http->setHost(url->host(),80);
也不对,修改为http->setHost(url->host(),url->port());
离线2173799
只看该作者 2楼 发表于: 2009-12-15
get是立即返回的,还没下载完,用requestFinished信号来获取下载信息,之后才关闭http
快速回复
限100 字节
 
上一个 下一个