Spec-Zone.ru › Qt

Класс 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

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

Типы public

Перечисление ContentType { WwwFormUrlEncoded, Json }
Перечисление Error { НетОшибки, ОшибкаСети, ОшибкаСервера, ОшибкаOAuthТокена, ОшибкаOAuthСекретТокена, OAuthCallbackНеПроверен }
Перечисление Stage { ЗапросВременныхУдостоверений, ЗапросАвторизации, ЗапросТокенаДоступа, ОбновлениеТокенаДоступа }
Перечисление Status { НеАвторизован, ПолученыВременныеУдостоверения, Авторизован, ОбновлениеТокена }

Свойства

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

Функции public

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

Свойства public

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.

перечисление QAbstractOAuth::Ошибка

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

Постоянная Значение Описание
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, предоставленному во время регистрации клиента.

перечисление QAbstractOAuth::Этап

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

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

перечисление QAbstractOAuth::Статус

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

Постоянная Значение Описание
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::ТипСодержимого

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

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

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

QAbstractOAuth::ТипСодержимого contentType() const
void setContentType(QAbstractOAuth::ТипСодержимого contentType)

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

void contentTypeChanged(QAbstractOAuth::ТипСодержимого contentType)

[read-only] дополнительныеТокены : const QVariantMap

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

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

QVariantMap extraTokens() const

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

void extraTokensChanged(const QVariantMap &tokens)

[read-only] статус : const Статус

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

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

QAbstractOAuth::Статус статус() const

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

void statusChanged(QAbstractOAuth::Статус status)

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

[signal] void QAbstractOAuth::авторизоватьСБраузером(const QUrl &url)

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

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

[pure virtual slot] void QAbstractOAuth::предоставить()

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

[signal] void QAbstractOAuth::предоставлено()

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

[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::ТипСодержимого 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)

Генерирует случайную строку, которая может быть использована в качестве состояния или nonce. Параметр 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, добавив в него заголовок и тело, необходимые для аутентифицированных запросов.

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.2/qabstractoauth.html

Spec-Zone.ru

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