采用Qt给远程服务器发送post请求,代码如下:
connect(accessManager, SIGNAL(finished(QNetworkReply*)), this, SLOT(finishedSlot(QNetworkReply*)));
...
int n = 0;
while (n<100)
{
n++;
QByteArray post_data = "";
QNetworkReply* reply = accessManager->post(request, post_data);
QTime dieTime = QTime::currentTime().addMSecs(48);//采用不同频率发送post请求,10Hz左右能稳定获得数据,频率超过10Hz就会报标题所示错误
while (QTime::currentTime() < dieTime)
QCoreApplication::processEvents(QEventLoop::AllEvents, 2);
}
...
void Http_Get::finishedSlot(QNetworkReply *reply)
{
if (reply->error() == QNetworkReply::NoError)
{
...
}
else
{
qDebug() << "finishedSlot errors here" << reply->error();
qDebug("found error .... code: %d\n", (int)reply->error());
qDebug(qPrintable(reply->errorString()));
}
reply->deleteLater();
}
当发送频率超过10Hz就会出现NetworkError(RemoteHostClosedError) 和NetworkError(NetworkSessionFailedError)错误。想问这是服务器的问题还是post请求发送问题?感谢。