QOAuth1Signature Class
OAuth 1 서명 메서드를 구현합니다. 더 보기...
| 헤더: | #include <QOAuth1Signature> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS NetworkAuth) target_link_libraries(mytarget PRIVATE Qt6::NetworkAuth) |
| qmake: | QT += networkauth |
공개 유형
| enum class | HttpRequestMethod { Head, Get, Put, Post, Delete, …, Unknown } |
공개 함수
| 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) |
정적 공용 멤버
| QByteArray | plainText(const QString &clientSharedKey, const QString &tokenSecret) |
상세 설명
OAuth 인증 요청에는 "oauth_consumer_key" 매개 변수를 통해 전달된 자격 증명과 "oauth_token" 매개 변수에 포함된 자격 증명, 두 가지 자격 증명 세트가 있을 수 있습니다. 서버가 요청의 진위 여부를 확인하고 무단 액세스를 방지하기 위해서는 클라이언트가 자신이 해당 자격 증명의 정당한 소유자임을 증명해야 합니다. 이는 각 자격 증명 세트의 공유 비밀(또는 RSA 키) 부분을 사용하여 수행됩니다.
OAuth는 클라이언트가 자격 증명의 정당한 소유권을 입증하기 위한 세 가지 방법, 즉 "HMAC-SHA1", "RSA-SHA1" 및 "PLAINTEXT"를 규정합니다. 각 방법은 요청을 “서명”하는 데 사용되는 “서명”을 생성하며, 처음 두 방법은 이를 생성할 때 서명 대상 데이터의 다이제스트를 사용하지만, 마지막 방법은 그렇지 않습니다. “RSA-SHA1” 방법은 여기에서 지원되지 않습니다. 이 방법은 클라이언트 자격 증명과 연관된 공유 비밀 대신 RSA 키를 사용하기 때문입니다.
멤버 유형 설명서
enum class QOAuth1Signature::HttpRequestMethod
HTTP 요청 메서드를 나타냅니다.
| 상수 | 값 | 설명 |
|---|---|---|
QOAuth1Signature::HttpRequestMethod::Head | 1 | HEAD 메서드. |
QOAuth1Signature::HttpRequestMethod::Get | 2 | GET 메서드. |
QOAuth1Signature::HttpRequestMethod::Put | 3 | PUT 메서드. |
QOAuth1Signature::HttpRequestMethod::Post | 4 | POST 메서드. |
QOAuth1Signature::HttpRequestMethod::Delete | 5 | DELETE 메서드. |
QOAuth1Signature::HttpRequestMethod::Custom | 6 | 사용자 정의 메서드를 나타냅니다. |
QOAuth1Signature::HttpRequestMethod::Unknown | 0 | 메서드가 설정되지 않았습니다. |
멤버 함수 문서
[explicit] QOAuth1Signature::QOAuth1Signature(const QUrl &url = QUrl(), QOAuth1Signature::HttpRequestMethod method = HttpRequestMethod::Post, const QMultiMap<QString, QVariant> ¶meters = {})
다음 주소를 사용하여 QOAuth1Signature를 생성합니다.
- url 을 대상 주소로 사용하여
- method 을 요청 전송에 사용되는 HTTP 메서드로
- 및 제공된 사용자 parameters 를 사용하여 요청을 보강합니다.
QOAuth1Signature::QOAuth1Signature(const QUrl &url, const QString &clientSharedKey, const QString &tokenSecret, QOAuth1Signature::HttpRequestMethod method = HttpRequestMethod::Post, const QMultiMap<QString, QVariant> ¶meters = {})
다음 주소를 사용하여 QOAuth1Signature를 생성합니다.
- url 를 대상 주소로 사용하여
- clientSharedKey 서명 검증에 사용되는 사용자 토큰으로
- tokenSecret 서명 검증에 사용되는 협상된 토큰
- method 요청을 전송하는 데 사용되는 HTTP 메서드로
- 그리고 주어진 사용자 parameters 를 사용하여 요청을 보강합니다.
QOAuth1Signature::QOAuth1Signature(const QOAuth1Signature &other)
other 의 복사본을 생성합니다.
QOAuth1Signature::QOAuth1Signature(QOAuth1Signature &&other)
other 가 사용하던 비공개 데이터를 가져와 QOAuth1Signature 인스턴스를 생성합니다.
[noexcept] QOAuth1Signature::~QOAuth1Signature()
QOAuth1Signature 를 삭제합니다.
void QOAuth1Signature::addRequestBody(const QUrlQuery &body)
서명에 body 요청을 추가합니다. POST 요청 본문에 인수가 포함되어 있는 경우, 해당 인수는 서명된 데이터에 포함되어야 합니다.
QString QOAuth1Signature::clientSharedKey() const
서명을 생성하는 데 사용된 사용자 비밀 키를 반환합니다.
setClientSharedKey()도 참조하십시오 .
QByteArray QOAuth1Signature::customMethodString() const
사용자 정의 메서드 문자열을 반환합니다.
setCustomMethodString() 및 httpRequestMethod()도 참조하십시오 .
QByteArray QOAuth1Signature::hmacSha1() const
클라이언트 공유 비밀키와 (사용 가능한 경우) 토큰 비밀키를 사용하여 HMAC-SHA1 서명을 생성합니다.
QOAuth1Signature::HttpRequestMethod QOAuth1Signature::httpRequestMethod() const
요청 메서드를 반환합니다.
setHttpRequestMethod()도 참조하십시오 .
void QOAuth1Signature::insert(const QString &key, const QVariant &value)
서명에 새로운 쌍 key, value 을 삽입합니다. POST 요청 본문에 인수가 포함되어 있는 경우, 해당 인수는 서명된 데이터에 포함되어야 합니다.
QList<QString> QOAuth1Signature::keys() const
서명된 데이터에 포함된 매개변수의 키 목록을 가져옵니다.
QMultiMap<QString, QVariant> QOAuth1Signature::parameters() const
매개변수를 반환합니다.
setParameters()도 참조하십시오 .
QByteArray QOAuth1Signature::plainText() const
PLAINTEXT 서명을 생성합니다.
[static] QByteArray QOAuth1Signature::plainText(const QString &clientSharedKey, const QString &tokenSecret)
클라이언트 시크릿 clientSharedKey 과 토큰 시크릿 tokenSecret 을 사용하여 PLAINTEXT 서명을 생성합니다.
QByteArray QOAuth1Signature::rsaSha1() const
RSA-SHA1 서명을 생성합니다.
참고: 현재 이 메서드는 지원되지 않습니다.
void QOAuth1Signature::setClientSharedKey(const QString &secret)
secret 를 서명 생성에 사용되는 사용자 시크릿으로 설정합니다.
clientSharedKey()도 참조하십시오 .
void QOAuth1Signature::setCustomMethodString(const QByteArray &verb)
사용자 정의 요청 메서드를 설정합니다. ` httpRequestMethod `를 ` QOAuth1Signature::HttpRequestMethod::Custom `로 설정하고, 서명 생성에 사용할 ` verb `를 저장합니다.
참고: 사용자 정의 동사를 사용할 때는 이 메서드를 반드시사용해야 합니다. 서명 생성 시 실제 동사를 알아야 하므로, 요청 메서드만 설정하는 경우 오류가 발생합니다.
customMethodString(), setHttpRequestMethod(), HttpRequestMethod도 참조하십시오 .
void QOAuth1Signature::setHttpRequestMethod(QOAuth1Signature::HttpRequestMethod method)
요청의 ` method` 속성을 설정합니다.
httpRequestMethod()도 참조하십시오 .
void QOAuth1Signature::setParameters(const QMultiMap<QString, QVariant> ¶meters)
parameters 를 설정합니다.
parameters()도 참조하십시오 .
void QOAuth1Signature::setTokenSecret(const QString &secret)
secret 를 서명 생성에 사용되는 협상된 비밀값으로 설정합니다.
tokenSecret()도 참조하십시오 .
void QOAuth1Signature::setUrl(const QUrl &url)
URL을 url 로 설정합니다.
url()도 참조하십시오 .
void QOAuth1Signature::swap(QOAuth1Signature &other)
other 서명을 이 서명으로 교체합니다. 이 작업은 매우 빠르게 수행되며 실패하는 일이 없습니다.
QVariant QOAuth1Signature::take(const QString &key)
서명된 데이터에서 ` key ` 및 이와 관련된 모든 값을 제거합니다.
QString QOAuth1Signature::tokenSecret() const
서명을 생성하는 데 사용된 협상된 비밀을 반환합니다.
setTokenSecret()도 참조하십시오 .
QUrl QOAuth1Signature::url() const
URL을 반환합니다.
setUrl()도 참조하십시오 .
QVariant QOAuth1Signature::value(const QString &key, const QVariant &defaultValue = QVariant()) const
서명된 데이터에 ` key`가 포함되어 있으면 해당 값을 반환하고, 그렇지 않으면 ` defaultValue`를 반환합니다.
QOAuth1Signature &QOAuth1Signature::operator=(QOAuth1Signature &&other)
other 를 이 시그니처에 이동 할당하고, 이 QOAuth1Signature 에 대한 참조를 반환합니다.
© 2026 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.