【发布时间】:2011-02-16 03:01:12
【问题描述】:
函数 CheckSite() 使用像 http://example.com 这样的 url 调用,它初始化 QNetworkAccessManager 对象和 connect() 插槽和信号。
manger->get() 调用似乎有效(它会生成 http 流量),但在请求端没有调用槽 replyFinished() 。
这段代码有什么问题?
#include <QtCore>
#include <QtNetwork>
class ClientHandler : public QObject
{
Q_OBJECT
QNetworkAccessManager *manager;
private slots:
void replyFinished(QNetworkReply *);
public:
void CheckSite(QString url);
};
void ClientHandler::replyFinished(QNetworkReply *reply) { qDebug() << "DONE"; }
void ClientHandler::CheckSite(QString url) {
QUrl qrl(url);
manager = new QNetworkAccessManager(this);
connect(manager, SIGNAL(finished(QNetworkReply*)), this, SLOT(replyFinished(QNetworkReply*)));
manager->get(QNetworkRequest(qrl));
}
【问题讨论】:
-
您找到解决方案了吗?我也有同样的问题。
-
不,我停止在该项目工作