核心 SDK 约定
基本约定
- 核心部分应仅包含与平台无关的功能。
- 核心部分应命名为
{$language}并位于代码库的根目录下。例如,logto/js/js,logto/kotlin/kotlin。 - 核心包应在 Logto 范围内命名为
{$language}。例如,@logto/js,io.logto.sdk:kotlin。
基本要求
任何核心 SDK 应包含:
- 类型
- 工具函数
- 核心功能
类型
OidcConfigResponse
身份提供商 (IdP) 的配置,可以通过 /oidc/.well-known/openid-configuration API 获取。
属性
| 名称 | 类型 |
|---|---|
| authorizationEndpoint | string |
| tokenEndpoint | string |
| endSessionEndpoint | string |
| revocationEndpoint | string |
| jwksUri | string |
| issuer | string |
CodeTokenResponse
/oidc/token 的响应数据(通过授权码)。
属性
| 名称 | 类型 | 必需 |
|---|---|---|
| accessToken | string | ✅ |
| refreshToken | string | |
| idToken | string | ✅ |
| scope | string | ✅ |
| expiresIn | number | ✅ |
RefreshTokenResponse
通过刷新令牌刷新令牌时,/oidc/token 的响应数据(通过刷新令牌)。
属性
| 名称 | 类型 | 必需 |
|---|---|---|
| accessToken | string | ✅ |
| refreshToken | string | ✅ |
| idToken | string | |
| scope | string | ✅ |
| expiresIn | number | ✅ |
IdTokenClaims
ID 令牌携带的声明。
属性
| 名称 | 类型 | 必需 |
|---|---|---|
| sub | string | ✅ |
| aud | string | ✅ |
| exp | number | ✅ |
| iat | number | ✅ |
| iss | string | ✅ |
| atHash | string | |
| username | string | |
| name | string | |
| avatar | string |