1)http请求数据组装及发送至服务端
void XXXX::postMsg(QString url, QByteArray data)
{
QNetworkRequest request;
request.setHeader(QNetworkRequest::ContentTypeHeader, "application/x-www-form-urlencoded");
QUrl u = QUrl(QString("%1%2%3").arg(hostUrl).arg(basePath).arg(url));
request.setUrl(u);
manager.post(request, data);
}
2)请求返回处理函数
void X'X'XX::on_networkFinished(QNetworkReply *replys)
{
QByteArray byte_array = replys->readAll();
QJsonObject json_object = QJsonDocument::fromJson(byte_array).object();
int code = json_object.value("code").toInt();
QString msg = json_object.value("msg").toString();
if (code != 0)
{
QMessageBox msgBox;
msgBox.setText(msg);
msgBox.setWindowTitle(QStringLiteral("登录"));
msgBox.exec();
return;
}
QUrl url = replys->request().url();
QString path = url.path().right(url.path().length() - basePath.length());
if (path.compare(PATH_LOGIN) == 0)
{
}
}
3)槽函数信号关联
connect(&manager, SIGNAL(finished(QNetworkReply*)), SLOT(on_networkFinished(QNetworkReply*)));