39 lines
1.2 KiB
C++
39 lines
1.2 KiB
C++
// httpClient.cpp
|
|
#include <QDebug>
|
|
#include "httpClient.h"
|
|
|
|
HttpClient::HttpClient(QObject* parent)
|
|
: QObject(parent),
|
|
networkManager(new QNetworkAccessManager(this))
|
|
{
|
|
connect(networkManager, &QNetworkAccessManager::finished, this, &HttpClient::onNetworkReplyFinished);
|
|
}
|
|
|
|
void HttpClient::sendPostRequest(const QNetworkRequest& request, const QByteArray& jsonData)
|
|
{
|
|
qDebug() << "jsonData" << jsonData.data();
|
|
networkManager->post(request, jsonData);
|
|
}
|
|
|
|
void HttpClient::sendGetRequest(const QNetworkRequest& request)
|
|
{
|
|
networkManager->get(request);
|
|
}
|
|
|
|
void HttpClient::onNetworkReplyFinished(QNetworkReply* reply)
|
|
{
|
|
if (reply->error() == QNetworkReply::NoError) {
|
|
QByteArray responseData = reply->readAll();
|
|
QJsonDocument jsonResponse = QJsonDocument::fromJson(responseData);
|
|
QJsonObject jsonObject = jsonResponse.object();
|
|
qDebug() << "jsonObject: " << jsonObject;
|
|
emit requestFinished(jsonObject);
|
|
}
|
|
else {
|
|
qDebug() << "reply->error(): " << reply->error();
|
|
qDebug() << "errorString: " << reply->errorString();
|
|
emit requestError(reply->errorString());
|
|
}
|
|
reply->deleteLater();
|
|
}
|