我正在做一个非常小而简单的协议实现,我的程序将发送一个特定的 URL 到目标机器,目标将回复一个 JSON 文件。
我已经阅读了很多关于如何在 QT 中执行此操作的示例,但我仍然面临一条我不理解的日志消息,并且我无法弄清楚问题到底是什么。
这是我发送 http 请求的简约代码的一部分:
主要类:
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = nullptr);
~MainWindow();
private slots:
void on_connectToSiteButton_clicked();
void httpFinished();
void httpReadyRead();
signals:
private:
Ui::MainWindow *ui;
QByteArray *mByteArray;
QNetworkAccessManager *mNetMan;
QNetworkReply *reply;
};
这是实际发送网络请求的实现:
void MainWindow::on_connectToSiteButton_clicked()
{
mNetMan = new QNetworkAccessManager;
// Send a Alarm status request
const QUrl ALARMLIST_URL("http://192.168.1.115/JSON.HTML?FN=ALSummary");
reply = mNetMan->get(QNetworkRequest(ALARMLIST_URL));
connect(reply, &QNetworkReply::finished, this, &MainWindow::httpFinished);
connect(reply, &QIODevice::readyRead, this, &MainWindow::httpReadyRead);
}
当我运行代码并按下按钮时,我在应用程序输出窗口中收到以下消息: QNetworkReplyHttpImplPrivate::_q_startOperation 被多次调用 QUrl(" http://192.168.1.115/JSON.HTML?FN=ALsummary ")
当我搜索解决方案时,我发现只有 git 注释,但没有解释原因。