35 lines
809 B
C++
35 lines
809 B
C++
// httpClient.h
|
|
#ifndef HTTPCLIENT_H
|
|
#define HTTPCLIENT_H
|
|
|
|
#include <QObject>
|
|
#include <QNetworkAccessManager>
|
|
#include <QNetworkReply>
|
|
#include <QNetworkRequest>
|
|
#include <QJsonDocument>
|
|
#include <QJsonObject>
|
|
#include <QJsonArray>
|
|
#include <QUrlQuery>
|
|
|
|
|
|
class HttpClient : public QObject
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
explicit HttpClient(QObject* parent = nullptr);
|
|
void sendPostRequest(const QNetworkRequest& request, const QByteArray& jsonData);
|
|
void sendGetRequest(const QNetworkRequest& request);
|
|
|
|
signals:
|
|
void requestFinished(const QJsonObject& response);
|
|
void requestError(const QString& errorString);
|
|
|
|
private slots:
|
|
void onNetworkReplyFinished(QNetworkReply* reply);
|
|
|
|
private:
|
|
QNetworkAccessManager* networkManager;
|
|
};
|
|
|
|
#endif // HTTPCLIENT_H
|