forked from ondra/server-sdk
65 lines
1.4 KiB
C++
65 lines
1.4 KiB
C++
#pragma once
|
|
|
|
#include <QString>
|
|
#include <QNetworkRequest>
|
|
|
|
namespace serversdk {
|
|
|
|
class Request : public QObject {
|
|
Q_OBJECT
|
|
friend class RequestManager;
|
|
friend class RequestTest;
|
|
public:
|
|
Request() = default;
|
|
~Request() override;
|
|
Request(QString type, QString url, QByteArray responseData = QByteArray());
|
|
virtual QNetworkRequest networkRequest() const;
|
|
|
|
// Data handling data
|
|
QByteArray requestData() const;
|
|
void setRequestData(const QByteArray &requestData);
|
|
QByteArray responseData() const;
|
|
|
|
// Attributes
|
|
QString url() const;
|
|
void setUrl(const QString &url);
|
|
|
|
|
|
|
|
// Authorization
|
|
QString userName() const;
|
|
void setUserName(const QString &userName);
|
|
QString password() const;
|
|
void setPassword(const QString &password);
|
|
QString token() const;
|
|
void setToken(const QString &token);
|
|
|
|
// Authorization headers
|
|
QString basicAuthorization() const;
|
|
QString bearerAuthorization() const;
|
|
|
|
|
|
private:
|
|
// Data handling
|
|
void appendData(const QByteArray &array);
|
|
|
|
|
|
signals:
|
|
void finished();
|
|
|
|
private:
|
|
QString mType; // POST, GET
|
|
QString mUrl;
|
|
|
|
// Authorization
|
|
QString mUserName;
|
|
QString mPassword;
|
|
QString mToken;
|
|
|
|
// Data
|
|
QByteArray mRequestData;
|
|
QByteArray mResponseData;
|
|
};
|
|
|
|
} // core
|