核心 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 |