QOAuth1Signature Class
Implementiert OAuth 1 Signaturmethoden. Mehr...
Kopfzeile: | #include <QOAuth1Signature> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS NetworkAuth) target_link_libraries(mytarget PRIVATE Qt6::NetworkAuth) |
qmake: | QT += networkauth |
Öffentliche Typen
enum class | HttpRequestMethod { Head, Get, Put, Post, Delete, …, Unknown } |
Öffentliche Funktionen
QOAuth1Signature(const QUrl &url = QUrl(), QOAuth1Signature::HttpRequestMethod method = HttpRequestMethod::Post, const QMultiMap<QString, QVariant> ¶meters = {}) | |
QOAuth1Signature(const QUrl &url, const QString &clientSharedKey, const QString &tokenSecret, QOAuth1Signature::HttpRequestMethod method = HttpRequestMethod::Post, const QMultiMap<QString, QVariant> ¶meters = {}) | |
QOAuth1Signature(const QOAuth1Signature &other) | |
QOAuth1Signature(QOAuth1Signature &&other) | |
~QOAuth1Signature() | |
void | addRequestBody(const QUrlQuery &body) |
QString | clientSharedKey() const |
QByteArray | customMethodString() const |
QByteArray | hmacSha1() const |
QOAuth1Signature::HttpRequestMethod | httpRequestMethod() const |
void | insert(const QString &key, const QVariant &value) |
QList<QString> | keys() const |
QMultiMap<QString, QVariant> | parameters() const |
QByteArray | plainText() const |
QByteArray | rsaSha1() const |
void | setClientSharedKey(const QString &secret) |
void | setCustomMethodString(const QByteArray &verb) |
void | setHttpRequestMethod(QOAuth1Signature::HttpRequestMethod method) |
void | setParameters(const QMultiMap<QString, QVariant> ¶meters) |
void | setTokenSecret(const QString &secret) |
void | setUrl(const QUrl &url) |
void | swap(QOAuth1Signature &other) |
QVariant | take(const QString &key) |
QString | tokenSecret() const |
QUrl | url() const |
QVariant | value(const QString &key, const QVariant &defaultValue = QVariant()) const |
QOAuth1Signature & | operator=(QOAuth1Signature &&other) |
Statische öffentliche Mitglieder
QByteArray | plainText(const QString &clientSharedKey, const QString &tokenSecret) |
Detaillierte Beschreibung
OAuth-authentifizierte Anfragen können zwei Sätze von Anmeldeinformationen haben: die über den Parameter "oauth_consumer_key" übergebenen und die im Parameter "oauth_token". Damit der Server die Authentizität der Anfrage überprüfen und einen unbefugten Zugriff verhindern kann, muss der Client nachweisen, dass er der rechtmäßige Eigentümer der Anmeldeinformationen ist. Dies geschieht mit Hilfe des Teils "Gemeinsames Geheimnis" (oder RSA-Schlüssel) eines jeden Satzes von Anmeldeinformationen.
OAuth legt drei Methoden fest, mit denen der Client seine rechtmäßige Eigentümerschaft an den Anmeldeinformationen nachweisen kann: "HMAC-SHA1", "RSA-SHA1" und "PLAINTEXT". Jede dieser Methoden erzeugt eine "Signatur", mit der die Anfrage "signiert" wird; die ersten beiden Methoden verwenden einen Digest der signierten Daten, um diese zu erzeugen, die letzte Methode jedoch nicht. Die Methode "RSA-SHA1" wird hier nicht unterstützt; sie würde einen RSA-Schlüssel statt des mit den Client-Anmeldeinformationen verbundenen gemeinsamen Geheimnisses verwenden.
Dokumentation der Mitgliedsarten
enum class QOAuth1Signature::HttpRequestMethod
Gibt die HTTP-Anforderungsmethode an.
Konstante | Wert | Beschreibung |
---|---|---|
QOAuth1Signature::HttpRequestMethod::Head | 1 | HEAD-Methode. |
QOAuth1Signature::HttpRequestMethod::Get | 2 | GET-Methode. |
QOAuth1Signature::HttpRequestMethod::Put | 3 | PUT-Methode. |
QOAuth1Signature::HttpRequestMethod::Post | 4 | POST-Methode. |
QOAuth1Signature::HttpRequestMethod::Delete | 5 | DELETE-Methode. |
QOAuth1Signature::HttpRequestMethod::Custom | 6 | Kennzeichnet eine benutzerdefinierte Methode. |
QOAuth1Signature::HttpRequestMethod::Unknown | 0 | Methode nicht gesetzt. |
Dokumentation der Mitgliedsfunktionen
[explicit]
QOAuth1Signature::QOAuth1Signature(const QUrl &url = QUrl(), QOAuth1Signature::HttpRequestMethod method = HttpRequestMethod::Post, const QMultiMap<QString, QVariant> ¶meters = {})
Erzeugt eine QOAuth1Signatur mit
- url als Zieladresse
- method als HTTP-Methode, die zum Senden der Anfrage verwendet wird
- und den angegebenen Benutzer parameters zur Ergänzung der Anfrage.
QOAuth1Signature::QOAuth1Signature(const QUrl &url, const QString &clientSharedKey, const QString &tokenSecret, QOAuth1Signature::HttpRequestMethod method = HttpRequestMethod::Post, const QMultiMap<QString, QVariant> ¶meters = {})
Erzeugt eine QOAuth1Signatur mit
- url als Zieladresse
- clientSharedKey als das zur Überprüfung der Signatur verwendete Benutzer-Token
- tokenSecret als das ausgehandelte Token, das für die Überprüfung der Signatur verwendet wird
- method als die HTTP-Methode, die zum Senden der Anfrage verwendet wird
- und den angegebenen Benutzer parameters zur Ergänzung der Anfrage.
QOAuth1Signature::QOAuth1Signature(const QOAuth1Signature &other)
Erzeugt eine Kopie von other.
QOAuth1Signature::QOAuth1Signature(QOAuth1Signature &&other)
Move-konstruiert eine QOAuth1Signature-Instanz und übernimmt die privaten Daten, die other verwendet hat.
[noexcept]
QOAuth1Signature::~QOAuth1Signature()
Zerstört die QOAuth1Signature.
void QOAuth1Signature::addRequestBody(const QUrlQuery &body)
Fügt die Anfrage body zur Signatur hinzu. Wenn ein POST-Anfragekörper Argumente enthält, sollten diese in die signierten Daten aufgenommen werden.
QString QOAuth1Signature::clientSharedKey() const
Gibt das Benutzergeheimnis zurück, das für die Erstellung der Signatur verwendet wurde.
Siehe auch setClientSharedKey().
QByteArray QOAuth1Signature::customMethodString() const
Gibt den String der benutzerdefinierten Methode zurück.
Siehe auch setCustomMethodString() und httpRequestMethod().
QByteArray QOAuth1Signature::hmacSha1() const
Erzeugt die HMAC-SHA1-Signatur unter Verwendung des gemeinsamen Geheimnisses des Clients und, falls vorhanden, des Token-Geheimnisses.
QOAuth1Signature::HttpRequestMethod QOAuth1Signature::httpRequestMethod() const
Gibt die Anfragemethode zurück.
Siehe auch setHttpRequestMethod().
void QOAuth1Signature::insert(const QString &key, const QVariant &value)
Fügt ein neues Paar key, value in die Signatur ein. Wenn ein POST-Anforderungskörper Argumente enthält, sollten diese in die signierten Daten aufgenommen werden.
QList<QString> QOAuth1Signature::keys() const
Ruft die Liste der Schlüssel der in den signierten Daten enthaltenen Parameter ab.
QMultiMap<QString, QVariant> QOAuth1Signature::parameters() const
Gibt die Parameter zurück.
Siehe auch setParameters().
QByteArray QOAuth1Signature::plainText() const
Erzeugt die PLAINTEXT-Signatur.
[static]
QByteArray QOAuth1Signature::plainText(const QString &clientSharedKey, const QString &tokenSecret)
Erzeugt eine PLAINTEXT-Signatur aus dem Client-Secret clientSharedKey und dem Token-Secret tokenSecret.
QByteArray QOAuth1Signature::rsaSha1() const
Erzeugt die RSA-SHA1-Signatur.
Hinweis: Derzeit wird diese Methode nicht unterstützt.
void QOAuth1Signature::setClientSharedKey(const QString &secret)
Legt secret als das Benutzergeheimnis fest, das zur Erzeugung der Signatur verwendet wird.
Siehe auch clientSharedKey().
void QOAuth1Signature::setCustomMethodString(const QByteArray &verb)
Setzt eine benutzerdefinierte Anfragemethode. Setzt die httpRequestMethod auf QOAuth1Signature::HttpRequestMethod::Custom und speichert die verb, um sie für die Erstellung der Signatur zu verwenden.
Hinweis: Die Verwendung dieser Methode ist erforderlich, wenn Sie mit benutzerdefinierten Verben arbeiten. Das Setzen nur der Anfragemethode wird fehlschlagen, da die Signatur das tatsächliche Verb kennen muss.
Siehe auch customMethodString(), setHttpRequestMethod(), und HttpRequestMethod.
void QOAuth1Signature::setHttpRequestMethod(QOAuth1Signature::HttpRequestMethod method)
Legt die Anfrage method fest.
Siehe auch httpRequestMethod().
void QOAuth1Signature::setParameters(const QMultiMap<QString, QVariant> ¶meters)
Setzt die parameters.
Siehe auch parameters().
void QOAuth1Signature::setTokenSecret(const QString &secret)
Legt secret als das ausgehandelte Geheimnis fest, das zur Erzeugung der Signatur verwendet wird.
Siehe auch tokenSecret().
void QOAuth1Signature::setUrl(const QUrl &url)
Setzt die URL auf url.
Siehe auch url().
void QOAuth1Signature::swap(QOAuth1Signature &other)
Tauscht die Signatur other mit dieser Signatur aus. Dieser Vorgang ist sehr schnell und schlägt nie fehl.
QVariant QOAuth1Signature::take(const QString &key)
Entfernt key und alle zugehörigen Werte aus den signierten Daten.
QString QOAuth1Signature::tokenSecret() const
Gibt das ausgehandelte Geheimnis zurück, das zur Erzeugung der Signatur verwendet wurde.
Siehe auch setTokenSecret().
QUrl QOAuth1Signature::url() const
Gibt die URL zurück.
Siehe auch setUrl().
QVariant QOAuth1Signature::value(const QString &key, const QVariant &defaultValue = QVariant()) const
Gibt den zu key gehörenden Wert zurück, wenn er in den vorzeichenbehafteten Daten vorhanden ist, andernfalls defaultValue.
QOAuth1Signature &QOAuth1Signature::operator=(QOAuth1Signature &&other)
Move-weist other dieser Signatur zu und gibt einen Verweis auf diese QOAuth1Signature zurück.
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.