QAbstractOAuth2 Class

The QAbstractOAuth2 class is the base of all implementations of OAuth 2 authentication methods. More...

Header: #include <QAbstractOAuth2>
qmake: QT += networkauth
Since: Qt 5.8
Inherits: QAbstractOAuth
Inherited By:

QOAuth2AuthorizationCodeFlow

Properties

Public Functions

QAbstractOAuth2(QObject *parent = nullptr)
QAbstractOAuth2(QNetworkAccessManager *manager, QObject *parent = nullptr)
~QAbstractOAuth2()
QString clientIdentifierSharedKey() const
virtual QUrl createAuthenticatedUrl(const QUrl &url, const QVariantMap &parameters = QVariantMap())
QDateTime expirationAt() const
virtual QString responseType() const = 0
QString scope() const
void setClientIdentifierSharedKey(const QString &clientIdentifierSharedKey)
void setScope(const QString &scope)
void setState(const QString &state)
void setUserAgent(const QString &userAgent)
QString state() const
QString userAgent() const

Reimplemented Public Functions

virtual QString clientIdentifier() const override
virtual QNetworkReply * deleteResource(const QUrl &url, const QVariantMap &parameters = QVariantMap()) override
virtual QNetworkReply * get(const QUrl &url, const QVariantMap &parameters = QVariantMap()) override
virtual QNetworkReply * head(const QUrl &url, const QVariantMap &parameters = QVariantMap()) override
virtual QNetworkReply * post(const QUrl &url, const QVariantMap &parameters = QVariantMap()) override
virtual void setClientIdentifier(const QString &clientIdentifier) override
virtual void setToken(const QString &token) override
virtual QString token() const override

Signals

void authorizationCallbackReceived(const QVariantMap &data)
void clientIdentifierChanged(const QString &clientIdentifier)
void clientIdentifierSharedKeyChanged(const QString &clientIdentifierSharedKey)
void error(const QString &error, const QString &errorDescription, const QUrl &uri)
void expirationAtChanged(const QDateTime &expiration)
void scopeChanged(const QString &scope)
void stateChanged(const QString &state)
void userAgentChanged(const QString &userAgent)

Protected Functions

QAbstractOAuth2(QAbstractOAuth2Private &, QObject *parent = nullptr)

Additional Inherited Members

Detailed Description

The QAbstractOAuth2 class is the base of all implementations of OAuth 2 authentication methods.

The class defines the basic interface of the OAuth 2 authentication classes. By inheriting this class, you can create custom authentication methods using the OAuth 2 standard for different web services.

A description of how OAuth 2 works can be found in: The OAuth 2.0 Authorization Framework

Property Documentation

clientIdentifier : QString

This property holds the client identifier used to identify the application in the authentication process.

Access functions:

virtual QString clientIdentifier() const override
virtual void setClientIdentifier(const QString &clientIdentifier) override

Notifier signal:

void clientIdentifierChanged(const QString &clientIdentifier)

clientIdentifierSharedKey : QString

This property holds the client shared key used as a password if the server requires authentication to request the token.

Access functions:

QString clientIdentifierSharedKey() const
void setClientIdentifierSharedKey(const QString &clientIdentifierSharedKey)

Notifier signal:

void clientIdentifierSharedKeyChanged(const QString &clientIdentifierSharedKey)

expiration : const QDateTime

This property holds the expiration time of the current access token.

Access functions:

QDateTime expirationAt() const

Notifier signal:

void expirationAtChanged(const QDateTime &expiration)

scope : QString

This property holds the desired scope which defines the permissions requested by the client.

Access functions:

QString scope() const
void setScope(const QString &scope)

Notifier signal:

void scopeChanged(const QString &scope)

state : QString

This property holds the string sent to the server during authentication. The state is used to identify and validate the request when the callback is received.

Access functions:

QString state() const
void setState(const QString &state)

Notifier signal:

void stateChanged(const QString &state)

userAgent : QString

This property holds the User-Agent header used to create the network requests.

The default value is "QtOAuth/1.0 (+https://www.qt.io)".

Access functions:

QString userAgent() const
void setUserAgent(const QString &userAgent)

Notifier signal:

void userAgentChanged(const QString &userAgent)

Member Function Documentation

QAbstractOAuth2::QAbstractOAuth2(QObject *parent = nullptr)

Constructs a QAbstractOAuth2 object using parent as parent.

QAbstractOAuth2::QAbstractOAuth2(QNetworkAccessManager *manager, QObject *parent = nullptr)

Constructs a QAbstractOAuth2 object using parent as parent and sets manager as the network access manager.

[protected] QAbstractOAuth2::QAbstractOAuth2(QAbstractOAuth2Private &, QObject *parent = nullptr)

Copy constructor.

QAbstractOAuth2::~QAbstractOAuth2()

Destroys the QAbstractOAuth2 instance.

[signal] void QAbstractOAuth2::authorizationCallbackReceived(const QVariantMap &data)

Signal emitted when the reply server receives the authorization callback from the server: data contains the values received from the server.

[virtual] QUrl QAbstractOAuth2::createAuthenticatedUrl(const QUrl &url, const QVariantMap &parameters = QVariantMap())

The returned URL is based on url, combining it with the given parameters and the access token.

[override virtual] QNetworkReply *QAbstractOAuth2::deleteResource(const QUrl &url, const QVariantMap &parameters = QVariantMap())

Reimplemented from QAbstractOAuth::deleteResource().

Sends an authenticated DELETE request and returns a new QNetworkReply. The url and parameters are used to create the request.

See also: Hypertext Transfer Protocol -- HTTP/1.1: DELETE

[signal] void QAbstractOAuth2::error(const QString &error, const QString &errorDescription, const QUrl &uri)

Signal emitted when the server responds to the request with an error: error is the name of the error; errorDescription describes the error and uri is an optional URI containing more information about the error.

[override virtual] QNetworkReply *QAbstractOAuth2::get(const QUrl &url, const QVariantMap &parameters = QVariantMap())

Reimplemented from QAbstractOAuth::get().

Sends an authenticated GET request and returns a new QNetworkReply. The url and parameters are used to create the request.

See also: Hypertext Transfer Protocol -- HTTP/1.1: GET

Reimplemented from QAbstractOAuth::head().

Sends an authenticated HEAD request and returns a new QNetworkReply. The url and parameters are used to create the request.

See also: Hypertext Transfer Protocol -- HTTP/1.1: HEAD

[override virtual] QNetworkReply *QAbstractOAuth2::post(const QUrl &url, const QVariantMap &parameters = QVariantMap())

Reimplemented from QAbstractOAuth::post().

Sends an authenticated POST request and returns a new QNetworkReply. The url and parameters are used to create the request.

See also: Hypertext Transfer Protocol -- HTTP/1.1: POST

[pure virtual] QString QAbstractOAuth2::responseType() const

[override virtual] void QAbstractOAuth2::setToken(const QString &token)

See also token().

[override virtual] QString QAbstractOAuth2::token() const

See also setToken().

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qabstractoauth2.html