exchange OAuth Token
OAuth 令牌交换 使用授权码换取访问令牌
端点:POST /api/proxy/account/sso/token 官方文档:VDS 账户/VDS 账户快速接入(OAuth).md
请求格式:
Content-Type: application/x-www-form-urlencoded
Authorization: Bearer <开放平台签名> (使用 config.apiKey) - 符合官方文档要求
请求体参数:
grant_type: 授权类型(authorization_code 或 refresh_token)
client_id: 应用 ID
client_secret: 应用密钥(开放平台签名)
code: 授权码(从 OAuth 授权回调中获取)
redirect_uri: 重定向 URI(必须与授权时一致)
code_verifier: PKCE code_verifier(可选,启用 PKCE 时必需)
注意:
此方法使用 config.apiKey 作为 Authorization header,符合官方文档要求
OAuth token(access_token)仅用于 getUserInfo() 接口,不用于此接口
Client token(签名交换的 token)和 OAuth token 不通用
示例:
val tokenRequest = OAuthTokenRequest(
appId = "vap_xxxxx",
clientSecret = sdkConfig.apiKey,
code = authCode,
redirectUri = "http://localhost:8080/callback",
codeVerifier = codeVerifier
)
val tokenInfo = authManager.exchangeOAuthToken(tokenRequest)Content copied to clipboard
Return
TokenInfo 包含访问令牌、刷新令牌和有效期信息
Parameters
request
OAuth 令牌请求,包含授权码和认证信息
Throws
当令牌交换失败时抛出