更新时间:2024-01-18 GMT+08:00
分享

获取ID Token

功能介绍

获取ID Token。

URI

POST /api/v1/oauth2/token

请求参数

表1 FormData参数

参数

是否必选

参数类型

描述

grant_type

String

授权类型,固定值:authorization_code。

code

String

授权码,认证登录后回调获取的授权码。

client_id

String

应用标识,注册应用后,分配的ClientId。

client_secret

String

应用密钥,注册应用后,分配的ClientSecret。

redirect_uri

String

回调地址,地址可以是注册应用时填写的回调地址,也可以是注册应用时填写的回调地址的域名。

响应参数

状态码: 200

表2 响应Body参数

参数

参数类型

描述

access_token

String

授权服务器返回给第三方应用的访问令牌。

token_type

String

访问令牌类型。固定值:Bearer。

expires_in

String

访问令牌的有效期,以秒为单位。

scope

String

授权范围。

refresh_token

String

刷新令牌。默认不生成refresh_token,如果需要,在应用的“认证配置”中设置“Refresh Token有效期”后生成返回。

id_token

String

ID Token。

状态码: 400

表3 响应Body参数

参数

参数类型

描述

error

String

错误类型。

error_description

String

错误描述。

请求示例

基于授权码获取ID Token。授权类型为固定值authorization_code,使用注册应用时分配的ClientId和ClientSecret,重定向地址配置为注册应用时的回调地址https://example.com。

POST https://{domain_name}/api/v1/oauth2/token

Content-Type: application/x-www-form-urlencoded

grant_type=authorization_code&
code=0yV...&
client_id=cU0L3GsEq1vuOJ5iQrRSu5AyPnKL8...&
client_secret=EFj******TcE&
redirect_uri=https://example.com

响应示例

状态码: 200

请求成功。

  • 示例 1

    {
      "access_token" : "ObU******NpD",
      "token_type" : "Bearer",
      "expires_in" : 7200,
      "scope" : "openid",
      "id_token" : "eyJ******Njg"
    }
  • 示例 2

    {
      "access_token" : "NqMh******d3k",
      "token_type" : "Bearer",
      "expires_in" : 7200,
      "scope" : "openid",
      "refresh_token" : "5wI******anH",
      "id_token" : "eyJ******Njg"
    }

状态码: 400

请求错误。

{
  "error" : "invalid_grant",
  "error_description" : "Invalid authorization code"
}

状态码

状态码

描述

200

请求成功。

400

请求错误。

错误码

请参见错误码

相关文档