连接到服务器并下载文件(与安全相关的查询)

时间:2012-03-25 09:04:50

标签: c++ security qt download

我用C ++和Qt编写了一个小程序。该程序显示将随时间更新的名称列表。要求是这个名称列表存储在一个网站上,我的程序应该下载该文件并在程序中显示该列表。我对网络编程和Qt没什么经验。

我的想法是将列表存储在Web服务器上的文本文件中,并使用Qt(QDownload?)中提供的模块之一在本地下载文件并显示列表。但是,我担心的是安全性。我想知道这是否是最好的方法,以及可能涉及的安全风险(如果有的话)。

1 个答案:

答案 0 :(得分:0)

要实际下载该文件,您可以查看this example。您需要查看QNetworkAccessManagerQNetworkRequestQNetworkReply类。该示例向服务器发送GET请求并等待结果。

简而言之,您创建了经理并挂钩信号:

QNetworkAccessManager *manager = new QNetworkAccessManager;
connect(manager, SIGNAL(finished(QNetworkReply*)), SLOT(fileDownloaded(QNetworkReply*)));

然后你提出请求:

QNetworkRequest request(QUrl("URL to your data"));
manager->get(request);

当文件下载完毕后,您就可以从QNetworkReply对象中读取数据:

void FileDownloader::fileDownloaded(QNetworkReply *reply) {
  QByteArray data = reply->readAll();
  // Do something with data.
}

安全风险取决于您的情况。也许您想详细说明您需要满足哪些安全标准?例如,如果您不希望其他人阅读它,那么您可能需要考虑加密它。