CheckSite() 함수는 http://example.com과 같은 URL로 호출되며, QNetworkAccessManager 객체를 초기화하고 슬롯과 신호를 연결합니다.Qt QNetworkAccessManager가 신호를 방출하지 않습니다.
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));
}
해결책을 찾았습니까? 나는 같은 문제가있다. –
아니요, 프로젝트 작업을 중단합니다 – Emilio