Spec-Zone.ru › Qt 6.1

Класс QAbstractOAuth

Класс QAbstractOAuth является базой для всех реализаций методов аутентификации OAuth. Подробнее...

Заголовок: #include <QAbstractOAuth>
CMake: find_package(Qt6 COMPONENTS NetworkAuth REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::NetworkAuth)
qmake: QT += networkauth
С тех пор: Qt 5.8
Наследует: QObject
Наследуется от:

QAbstractOAuth2 и QOAuth1

  • Список всех членов, включая наследуемые члены

Открытые типы

Перечисление ContentType { WwwFormUrlEncoded, Json }
Перечисление Error { NoError, NetworkError, ServerError, OAuthTokenNotFoundError, OAuthTokenSecretNotFoundError, OAuthCallbackNotVerified }
Перечисление Stage { RequestingTemporaryCredentials, RequestingAuthorization, RequestingAccessToken, RefreshingAccessToken }
Перечисление Status { NotAuthenticated, TemporaryCredentialsReceived, Granted, RefreshingToken }

Свойства

  • authorizationUrl : QUrl
  • contentType : QAbstractOAuth::ContentType
  • extraTokens : const QVariantMap
  • status : const Status

Открытые функции

virtual ~QAbstractOAuth()
QUrl authorizationUrl() const
QString clientIdentifier() const
QAbstractOAuth::ContentType contentType() const
virtual QNetworkReply * deleteResource(const QUrl &url, const QVariantMap &parameters = QVariantMap()) = 0
QVariantMap extraTokens() const
virtual QNetworkReply * get(const QUrl &url, const QVariantMap &parameters = QVariantMap()) = 0
virtual QNetworkReply * head(const QUrl &url, const QVariantMap &parameters = QVariantMap()) = 0
QAbstractOAuth::ModifyParametersFunction modifyParametersFunction() const
QNetworkAccessManager * networkAccessManager() const
virtual QNetworkReply * post(const QUrl &url, const QVariantMap &parameters = QVariantMap()) = 0
virtual void prepareRequest(QNetworkRequest *request, const QByteArray &verb, const QByteArray &body = QByteArray()) = 0
virtual QNetworkReply * put(const QUrl &url, const QVariantMap &parameters = QVariantMap()) = 0
QAbstractOAuthReplyHandler * replyHandler() const
void setAuthorizationUrl(const QUrl &url)
void setClientIdentifier(const QString &clientIdentifier)
void setContentType(QAbstractOAuth::ContentType contentType)
void setModifyParametersFunction(const QAbstractOAuth::ModifyParametersFunction &modifyParametersFunction)
void setNetworkAccessManager(QNetworkAccessManager *networkAccessManager)
void setReplyHandler(QAbstractOAuthReplyHandler *handler)
void setToken(const QString &token)
QAbstractOAuth::Status status() const
QString token() const

Открытые слоты

virtual void grant() = 0

Сигналы

void authorizationUrlChanged(const QUrl &url)
void authorizeWithBrowser(const QUrl &url)
void clientIdentifierChanged(const QString &clientIdentifier)
void contentTypeChanged(QAbstractOAuth::ContentType contentType)
void extraTokensChanged(const QVariantMap &tokens)
void granted()
void statusChanged(QAbstractOAuth::Status status)
void tokenChanged(const QString &token)

Защищенные функции

QString callback() const
virtual void resourceOwnerAuthorization(const QUrl &url, const QMultiMap<QString, QVariant> &parameters)
void setStatus(QAbstractOAuth::Status status)

Статические защищенные члены

QByteArray generateRandomString(quint8 length)

Подробное описание

Класс определяет базовый интерфейс классов аутентификации OAuth. Наследуя этот класс, вы можете создавать пользовательские методы аутентификации для разных веб-сервисов.

Он также содержит некоторые функции, которые упрощают процесс реализации различных потоков аутентификации.

Документация по типам членов

Перечисление QAbstractOAuth::ContentType

Указывает MIME Content-Type методов POST в авторизованных вызовах.

Постоянная Значение Описание
QAbstractOAuth::ContentType::WwwFormUrlEncoded 0 Использует формат application/x-www-form-urlencoded.
QAbstractOAuth::ContentType::Json 1 Использует формат application/json.

enum class QAbstractOAuth::Error

Указывает последнюю полученную ошибку.

Постоянная Значение Описание
QAbstractOAuth::Error::NoError 0 Ошибка не произошла.
QAbstractOAuth::Error::NetworkError 1 Не удалось подключиться к серверу.
QAbstractOAuth::Error::ServerError 2 Сервер ответил на запрос с ошибкой.
QAbstractOAuth::Error::OAuthTokenNotFoundError 3 Ответ сервера на запрос токена не содержит идентификатора токена.
QAbstractOAuth::Error::OAuthTokenSecretNotFoundError 4 Ответ сервера на запрос токена не содержит секрета токена.
QAbstractOAuth::Error::OAuthCallbackNotVerified 5 Сервер авторизации не проверил предоставленный в запросе callback URI. Это обычно происходит, когда предоставленный callback не соответствует callback, предоставленному при регистрации клиента.

enum class QAbstractOAuth::Stage

Идентифицирует этап аутентификации. Он передаётся в modifyParametersFunction, чтобы тот мог вносить различные изменения в параметры при каждом вызове во время процесса аутентификации.

Постоянная Значение Описание
QAbstractOAuth::Stage::RequestingTemporaryCredentials 0 Подготовка запроса временных учетных данных.
QAbstractOAuth::Stage::RequestingAuthorization 1 Подготовка URL для получения разрешения на авторизацию.
QAbstractOAuth::Stage::RequestingAccessToken 2 Подготовка запроса токена.
QAbstractOAuth::Stage::RefreshingAccessToken 3 Подготовка обновления токена доступа.

enum class QAbstractOAuth::Status

Указывает текущий статус аутентификации.

Постоянная Значение Описание
QAbstractOAuth::Status::NotAuthenticated 0 Токен не был получен.
QAbstractOAuth::Status::TemporaryCredentialsReceived 1 Временные учетные данные получены, этот статус используется в некоторых методах аутентификации OAuth.
QAbstractOAuth::Status::Granted 2 Учетные данные токена получены и проверены, разрешены запросы с аутентификацией.
QAbstractOAuth::Status::RefreshingToken 3 Запрошены новые учетные данные токена.

Документация по свойствам

authorizationUrl : QUrl

Это свойство содержит URL, используемый для запроса авторизации владельца ресурса, как описано в: Протокол OAuth 1.0: Авторизация владельца ресурса

Функции доступа:

QUrl authorizationUrl() const
void setAuthorizationUrl(const QUrl &url)

Сигнал уведомления:

void authorizationUrlChanged(const QUrl &url)

contentType : QAbstractOAuth::ContentType

Это свойство содержит Content-Type для использования при отправке параметров авторизации.

Это свойство управляет форматированием параметров при отправке с помощью запроса POST. Также добавляется соответствующий заголовок.

Функции доступа:

QAbstractOAuth::ContentType contentType() const
void setContentType(QAbstractOAuth::ContentType contentType)

Сигнал уведомления:

void contentTypeChanged(QAbstractOAuth::ContentType contentType)

[read-only] extraTokens : const QVariantMap

Это свойство содержит дополнительные токены, полученные от сервера.

Функции доступа:

QVariantMap extraTokens() const

Сигнал уведомления:

void extraTokensChanged(const QVariantMap &tokens)

[read-only] status : const Status

Это свойство содержит текущий статус аутентификации.

Функции доступа:

QAbstractOAuth::Status status() const

Сигнал уведомления:

void statusChanged(QAbstractOAuth::Status status)

Документация по функциям-членам

[signal] void QAbstractOAuth::authorizeWithBrowser(const QUrl &url)

Этот сигнал генерируется, когда url, сгенерированный функцией resourceOwnerAuthorization(), готов к использованию в веб-браузере, чтобы позволить приложению действовать от имени пользователя.

См. также resourceOwnerAuthorization().

[pure virtual slot] void QAbstractOAuth::grant()

Переопределите эту функцию, чтобы реализовать соответствующий поток аутентификации в дочерних классах. Код клиента вызывает эту функцию, чтобы начать процесс аутентификации. Это может потребовать взаимодействия с пользователем, например, запроса разрешения пользователя через веб-браузер. После успешной аутентификации должен быть выпущен сигнал granted; это оповещает о том, что учетные данные готовы к использованию в запросах с аутентификацией.

[signal] void QAbstractOAuth::granted()

Этот сигнал генерируется, когда поток авторизации завершается успешно.

[virtual] QAbstractOAuth::~QAbstractOAuth()

Уничтожает абстрактный OAuth.

QUrl QAbstractOAuth::authorizationUrl() const

Возвращает URL-адрес запроса авторизации.

Примечание: Функция-геттер для свойства authorizationUrl.

См. также setAuthorizationUrl().

[protected] QString QAbstractOAuth::callback() const

Возвращает текущую строку callback, соответствующую текущему обработчику ответа. Возвращаемая строка — это строка, отправленная серверу для указания callback URI или слово, идентифицирующее альтернативный метод в устройствах без графического интерфейса.

См. также replyHandler() и setReplyHandler().

QString QAbstractOAuth::clientIdentifier() const

Возвращает текущий идентификатор клиента, используемый в процессе аутентификации.

Примечание: Функция-геттер для свойства clientIdentifier.

См. также setClientIdentifier().

QAbstractOAuth::ContentType QAbstractOAuth::contentType() const

Возвращает текущий Content-Type, используемый в запросах с аутентификацией.

Примечание: Функция-геттер для свойства contentType.

См. также setContentType() и post().

[pure virtual invokable] QNetworkReply *QAbstractOAuth::deleteResource(const QUrl &url, const QVariantMap &parameters = QVariantMap())

Отправляет аутентифицированный запрос DELETE и возвращает новый QNetworkReply. url и parameters используются для создания запроса.

См. также: Hypertext Transfer Protocol -- HTTP/1.1: DELETE

Примечание: Данная функция может вызываться через систему метаобъектов и из QML. См. Q_INVOKABLE.

QVariantMap QAbstractOAuth::extraTokens() const

Возвращает дополнительные токены, полученные от сервера во время аутентификации.

Примечание: Функция-геттер для свойства extraTokens.

См. также extraTokensChanged().

[static protected] QByteArray QAbstractOAuth::generateRandomString(quint8 length)

Генерирует случайную строку, которая может использоваться в качестве состояния или случайного числа. Параметр length определяет размер сгенерированной строки.

См. также: The OAuth 1.0 Protocol: Nonce and Timestamp.

[pure virtual invokable] QNetworkReply *QAbstractOAuth::get(const QUrl &url, const QVariantMap &parameters = QVariantMap())

Отправляет аутентифицированный запрос GET и возвращает новый QNetworkReply. url и parameters используются для создания запроса.

См. также: Hypertext Transfer Protocol -- HTTP/1.1: GET

Примечание: Данная функция может вызываться через систему метаобъектов и из QML. См. Q_INVOKABLE.

[pure virtual invokable] QNetworkReply *QAbstractOAuth::head(const QUrl &url, const QVariantMap &parameters = QVariantMap())

Отправляет аутентифицированный запрос HEAD и возвращает новый QNetworkReply. url и parameters используются для создания запроса.

См. также: Hypertext Transfer Protocol -- HTTP/1.1: HEAD

Примечание: Данная функция может вызываться через систему метаобъектов и из QML. См. Q_INVOKABLE.

QAbstractOAuth::ModifyParametersFunction QAbstractOAuth::modifyParametersFunction() const

Возвращает текущую функцию модификации параметров.

См. также setModifyParametersFunction() и Stage.

QNetworkAccessManager *QAbstractOAuth::networkAccessManager() const

Возвращает текущий менеджер сетевого доступа, используемый для отправки запросов на сервер во время потоков аутентификации или для выполнения аутентификационных вызовов.

См. также setNetworkAccessManager() и QNetworkAccessManager.

[pure virtual invokable] QNetworkReply *QAbstractOAuth::post(const QUrl &url, const QVariantMap &parameters = QVariantMap())

Отправляет аутентифицированный запрос POST и возвращает новый QNetworkReply. url и parameters используются для создания запроса.

См. также: Hypertext Transfer Protocol -- HTTP/1.1: POST

Примечание: Данная функция может вызываться через систему метаобъектов и из QML. См. Q_INVOKABLE.

[pure virtual, since 5.13] void QAbstractOAuth::prepareRequest(QNetworkRequest *request, const QByteArray &verb, const QByteArray &body = QByteArray())

Авторизует заданный request, добавив заголовок и body, необходимые для аутентифицированных запросов.

verb должен быть допустимым HTTP-глаголом и совпадать с глаголом, используемым для отправки request.

Эта функция была добавлена в Qt 5.13.

[pure virtual invokable] QNetworkReply *QAbstractOAuth::put(const QUrl &url, const QVariantMap &parameters = QVariantMap())

Отправляет аутентифицированный запрос PUT и возвращает новый QNetworkReply. url и parameters используются для создания запроса.

См. также: Hypertext Transfer Protocol -- HTTP/1.1: PUT

Примечание: Данная функция может вызываться через систему метаобъектов и из QML. См. Q_INVOKABLE.

QAbstractOAuthReplyHandler *QAbstractOAuth::replyHandler() const

Возвращает обработчик ответа, который используется в данный момент.

См. также setReplyHandler() и QAbstractOAuthReplyHandler.

[virtual protected] void QAbstractOAuth::resourceOwnerAuthorization(const QUrl &url, const QMultiMap<QString, QVariant> &parameters)

Строит URL для авторизации владельца ресурса для использования в веб-браузере: url используется в качестве базового URL, а запрос создаётся с использованием parameters. После подготовки URL, сигнал authorizeWithBrowser() будет выпущен с сгенерированным URL.

См. также authorizeWithBrowser().

void QAbstractOAuth::setAuthorizationUrl(const QUrl &url)

Устанавливает URL запроса авторизации в url. Этот адрес будет использоваться для предоставления пользователю возможности предоставить приложению возможность выполнения аутентифицированных вызовов от имени пользователя.

Примечание: Функция-сеттер для свойства authorizationUrl.

См. также authorizationUrl().

void QAbstractOAuth::setClientIdentifier(const QString &clientIdentifier)

Устанавливает текущий идентификатор клиента в clientIdentifier.

Примечание: Функция-сеттер для свойства clientIdentifier.

См. также clientIdentifier().

void QAbstractOAuth::setContentType(QAbstractOAuth::ContentType contentType)

Устанавливает текущий Content-Type в contentType.

Примечание: Функция-сеттер для свойства contentType.

См. также contentType().

void QAbstractOAuth::setModifyParametersFunction(const QAbstractOAuth::ModifyParametersFunction &modifyParametersFunction)

Устанавливает функцию модификации параметров modifyParametersFunction. Эта функция используется для настройки параметров, отправляемых на сервер на определённой стадии авторизации. Количество вызовов этой функции зависит от используемого потока во время аутентификации.

См. также modifyParametersFunction() и Stage.

void QAbstractOAuth::setNetworkAccessManager(QNetworkAccessManager *networkAccessManager)

Устанавливает менеджер сети в networkAccessManager. QAbstractOAuth не принимает владение networkAccessManager. Если не установлен пользовательский менеджер сетевого доступа, используется внутренний менеджер сети. Этот менеджер сети будет использоваться для отправки запроса на сервер аутентификации и аутентифицированного запроса на веб-сервис.

См. также networkAccessManager() и QNetworkAccessManager.

void QAbstractOAuth::setReplyHandler(QAbstractOAuthReplyHandler *handler)

Устанавливает текущий обработчик ответа в handler.

Примечание: Не принимает владение handler.

См. также replyHandler().

[protected] void QAbstractOAuth::setStatus(QAbstractOAuth::Status status)

Устанавливает текущий статус в status. Этот метод предназначен для использования классами, основанными на QAbstractOAuth.

См. также status().

void QAbstractOAuth::setToken(const QString &token)

Устанавливает токен, используемый для подписи аутентифицированных запросов, в token.

Примечание: Функция-сеттер для свойства token.

См. также token().

QAbstractOAuth::Status QAbstractOAuth::status() const

Возвращает текущий статус аутентификации.

Примечание: Функция-геттер для свойства status.

См. также setStatus() и Status.

QString QAbstractOAuth::token() const

Возвращает токен, используемый для подписи аутентифицированных запросов.

Примечание: Функция-геттер для свойства token.

См. также setToken().

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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API