- class QAbstractOAuth#
QAbstractOAuth
类是所有OAuth认证方法实现的基础。 更多…继承自:
QOAuth1
,QAbstractOAuth2
,QOAuth2AuthorizationCodeFlow
概要#
属性#
authorizationUrl
- 此属性存储以其请求资源所有者授权的URL,如OAuth 1.0协议所述:OAuth 1.0协议:资源所有者授权contentType
- 发送授权参数时应使用的内容类型extraTokensᅟ
- 属性存储从服务器接收的额外令牌statusᅟ
- 属性存储当前的认证状态
方法#
def
callback()
def
contentType()
def
extraTokens()
def
replyHandler()
def
setContentType()
def
setStatus()
def
setToken()
def
status()
def
token()
虚方法#
信号#
静态函数#
注意
此文档可能包含从 C++ 自动翻译成 Python 的代码片段。我们始终欢迎对片段翻译的贡献。如果您发现翻译有问题,也可以通过在 https:/bugreports.qt.io/projects/PYSIDE 上创建工单来通知我们。
详细描述#
此类定义了 OAuth 认证类的基接口。通过继承此类,您可以为不同的网络服务创建自定义认证方法。
此外,它还包含了一些简化不同认证流程实现的函数。
- class Status#
表示当前的认证状态。
常量
描述
QAbstractOAuth.Status.NotAuthenticated
未检索到任何令牌。
QAbstractOAuth.Status.TemporaryCredentialsReceived
已接收到临时凭证,该状态用于某些OAuth认证方法中。
QAbstractOAuth.Status.Granted
已接收到并验证了令牌凭证,允许执行认证调用。
QAbstractOAuth.Status.RefreshingToken
已请求新的令牌凭证。
- class Stage#
标识认证阶段。作为一个
modifyParametersFunction
的参数,以便在身份验证过程中对每个调用进行不同的参数更改。常量
描述
QAbstractOAuth.Stage.RequestingTemporaryCredentials
准备临时凭证请求。
QAbstractOAuth.Stage.RequestingAuthorization
准备授权授予URL。
QAbstractOAuth.Stage.RequestingAccessToken
准备令牌请求。
QAbstractOAuth.Stage.RefreshingAccessToken
准备访问令牌刷新。
- class Error#
表示最近接收到的错误。
常量
描述
QAbstractOAuth.Error.NoError
没有错误发生。
QAbstractOAuth.Error.NetworkError
无法连接到服务器。
QAbstractOAuth.Error.ServerError
服务器以错误响应请求,或者其响应未成功接收(例如,由于状态不匹配)。
QAbstractOAuth.Error.OAuthTokenNotFoundError
服务器对令牌请求的响应未提供令牌标识符。
QAbstractOAuth.Error.OAuthTokenSecretNotFoundError
服务器对令牌请求的响应未提供令牌密钥。
QAbstractOAuth.Error.OAuthCallbackNotVerified
授权服务器未验证请求中提供的回叫URI。这通常发生在提供的回叫与在客户端注册期间提供的回叫不匹配时。
- class ContentType#
表示认证调用中POST方法的MIME内容类型。
常量
描述
QAbstractOAuth.ContentType.WwwFormUrlEncoded
使用application/x-www-form-urlencoded格式。
QAbstractOAuth.ContentType.Json
使用application/json格式。
注意
属性可以直接在使用
from __feature__ import true_property
时使用,否则通过访问器函数使用。该属性持有所使用的URL,用于请求资源所有者授权,具体请参见:OAuth 1.0 协议:资源所有者授权 。
- 属性 clientIdentifier: str#
- 属性 contentType: QAbstractOAuth.ContentType#
该属性保存发送授权参数时要使用的 Content-Type。
此属性控制参数在随 POST 请求发送时的格式化方式。还会添加适当的头部。
- 属性 extraTokens: 字典,键的类型为 .QString,值的类型为 QVariant#
该属性保存从服务器收到的额外令牌。
- 访问函数
- 属性 status: QAbstractOAuth.Status#
该属性保存当前的认证状态。
- 访问函数
- 属性 token: str#
- 访问函数
返回授权请求的 URL。
属性
authorizationUrl
的获取器。属性
authorizationUrl
的通知信号。当由
resourceOwnerAuthorization()
生成的url
准备在网页浏览器中使用时,允许应用程序模拟用户。- callback()#
- 返回类型::
str
返回当前与当前回复处理程序对应的回调字符串。返回的字符串是发送到服务器以指定回调 URI 的字符串,或在无头设备中识别替代方法的单词。
- clientIdentifier()#
- 返回类型::
str
返回当前在认证过程中使用的客户端标识符。
属性
clientIdentifier
的获取器。- clientIdentifierChanged(clientIdentifier)#
- 参数::
clientIdentifier – str
属性
clientIdentifier
的通知信号。- contentType()#
- 返回类型::
返回当前在认证调用中使用的 Content-Type。
属性
contentType
的获取器。- contentTypeChanged(contentType)#
- 参数::
contentType –
ContentType
属性
contentType
的通知信号。- abstract deleteResource(url[, parameters=QVariantMap()])#
- 参数::
url –
QUrl
parameters – 键类型为 .QString,值类型为 QVariant 的字典。
- 返回类型::
发送一个认证的 DELETE 请求并返回一个新的 QNetworkReply。使用
url
和parameters
创建请求。另请参阅:超文本传输协议 – HTTP/1.1: DELETE
- extraTokens()#
- 返回类型::
键类型为 .QString,值类型为 QVariant 的字典。
返回认证期间从服务器收到的额外令牌。
属性
extraTokens
的获取器。- extraTokensChanged(tokens)#
- 参数::
tokens – 键类型为 .QString,值类型为 QVariant 的字典。
属性
extraTokens
的通知信号。- finished(reply)#
- 参数::
reply –
QNetworkReply
- static generateRandomString(length)#
- 参数::
length – int
- 返回类型::
生成一个随机字符串,该字符串可以用作状态或nonce。参数
length
决定了生成的字符串大小。另请参阅:OAuth 1.0 协议:Nonce 和 Timestamp。
- abstract get(url[, parameters=QVariantMap()])#
- 参数::
url –
QUrl
parameters – 键类型为 .QString,值类型为 QVariant 的字典。
- 返回类型::
发送一个认证的 GET 请求并返回一个新的 QNetworkReply。使用
url
和parameters
创建请求。- 摘要 授权()#
覆盖此函数以在子类中实现相应的认证流程。客户端代码调用此函数以启动认证工作流程。这可能需要用户交互:例如,通过网页浏览器请求用户的授权。认证成功后,应发射
granted()
;这表示凭证已准备好在认证调用中使用。- granted()#
当授权流程成功完成时,会发射这个信号。
- 摘要 head(url[, parameters=QVariantMap()])#
- 参数::
url –
QUrl
parameters – 键类型为 .QString,值类型为 QVariant 的字典。
- 返回类型::
发送一个认证的HEAD请求并返回一个新的QNetworkReply。使用
url
和parameters
来创建请求。- networkAccessManager()#
- 返回类型::
返回用于在认证流程期间向服务器发送请求或进行认证调用的当前网络访问管理器。
- 抽象 post(url[, parameters=QVariantMap()])#
- 参数::
url –
QUrl
parameters – 键类型为 .QString,值类型为 QVariant 的字典。
- 返回类型::
发送一个认证的POST请求并返回一个新QNetworkReply。使用
url
和parameters
来创建请求。- 抽象 prepareRequest(request, verb[, body=QByteArray()])#
- 参数::
request –
QNetworkRequest
动词 –
QByteArray
主体 –
QByteArray
通过向给定的
request
添加必要的头部和body
来授权它,以进行认证请求。verb
必须是有效的 HTTP 动词,并且与将要用来发送request
的动词相同。- abstract put(url[, parameters=QVariantMap()])#
- 参数::
url –
QUrl
parameters – 键类型为 .QString,值类型为 QVariant 的字典。
- 返回类型::
发送一个认证的 PUT 请求并返回一个新 QNetworkReply。使用
url
和parameters
来创建请求。另请参阅: 超文本传输协议 – HTTP/1.1: PUT
- replyDataReceived(data)#
- 参数::
数据 –
QByteArray
- replyHandler()#
- 返回类型::
返回目前正在使用的回复处理程序。
当请求服务器失败时,会发出此信号。提供的
error
表示请求是如何失败的。构建用于在网页浏览器中的资源所有者授权URL:使用
url
作为基本URL,使用parameters
创建查询。当URL准备就绪时,将发出authorizeWithBrowser()
信号,其中包含生成的URL。将授权请求URL设置为
url
。该地址将用于允许用户授权应用以代表用户进行认证调用。属性
authorizationUrl
的设置器。- setClientIdentifier(clientIdentifier)#
- 参数::
clientIdentifier – str
将当前客户端标识符设置为
clientIdentifier
。clientIdentifier
属性的设置器。- setContentType(contentType)#
- 参数::
contentType –
ContentType
将当前Content-Type设置为
contentType
。contentType
属性的设置器。- setModifyParametersFunction(modifyParametersFunction)#
- 参数::
modifyParametersFunction – 对象
- setNetworkAccessManager(networkAccessManager)#
- 参数::
networkAccessManager –
QNetworkAccessManager
将网络管理器设置为
networkAccessManager
。PySide6.QtNetworkAuth.QAbstractOAuth不会获取networkAccessManager
的所有权。如果没有设置自定义网络访问管理器,将使用内部网络访问管理器。此网络访问管理器将用于向认证服务器和向网络服务进行认证请求。- setReplyHandler(handler)#
- 参数::
handler –
QAbstractOAuthReplyHandler
设置当前的回复处理程序为
handler
。设置当前状态为
status
。此方法供基于QAbstractOAuth
的类使用。参见
- setToken(token)#
- 参数::
token – str
设置用于签名认证请求数据的令牌为
token
。参见
属性
token
的设置器。返回当前的认证状态。
属性
status
的获取器。属性
status
的通知信号。- token()#
- 返回类型::
str
返回用于签名认证请求数据的令牌。
参见
属性
token
的获取器。- tokenChanged(token)#
- 参数::
token – str
属性
token
的通知信号。