如何解决使用 QNetworkReply 超时请求 POST
我正在使用基于 4.8 版的 QtCreator 为使用 linux 操作系统的设备开发应用程序。
我正在尝试在 QT 中制作 POST 订单 我正在使用以下库
#include <QNetworkAccessManager>
#include <qnetworkrequest>
#include <QNetworkReply>
{
QString msg;
QString url = "myURL";
qnetworkrequest request = qnetworkrequest(QUrl(url));
request.setHeader(qnetworkrequest::ContentTypeHeader,QVariant("application/json; charset=UTF-8"));
QString message = QString("{\"message\" : %1}").arg("\"hello\"");
QByteArray AliveJson = message.tolatin1();
reply = manager->post(request,AliveJson);
connect(manager,SIGNAL(finished(QNetworkReply*)),this,SLOT(finished(QNetworkReply*)));
}
void page100::finished(QNetworkReply *r)
{
qDebug()<<"MetoD FINISHED CALLED!";
QString msg;
qDebug()<< r;
qDebug()<< "-----------------------------";
qDebug()<< reply;
if (r == reply) {
int status = r->attribute(qnetworkrequest::HttpStatusCodeAttribute).toInt();
if (r->error() == QNetworkReply::NoError && status >= 200 && status < 300) {
msg = QString("successfull reply (%1)").arg(status);//200
qDebug()<<reply->readAll();
} else {
msg = QString("failure reply (%1),%2").arg(status).arg(r->errorString());
qDebug()<<msg;
}
reply = NULL;
} else {
msg = QString("unkNown reply,url=%1").arg(r->url().toString());
qDebug()<<msg;
}
r->deleteLater();
ui->plainTextEdit->setPlainText(ui->plainTextEdit->toPlainText() + msg);
qDebug()<<msg;
}
我总是收到以下错误
failure reply(0),socket operation timed out
我尝试创建一个新的 url 进行通信,但我一直收到同样的错误。
设备已正确连接到互联网。我已经做了ping程序,设备通信正常
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。