开发者文档
让用户用 Descend ID 一键登录你的应用。只需 3 行代码。
接入流程
注册账号
访问 auth.descend.id 注册一个 Descend ID 账号。
创建应用
在 控制台 中创建应用,获取 client_id。
复制代码
在应用详情中复制接入代码,粘贴到你的网站即可。
SDK 接入
使用官方 SDK,一行代码完成接入。
引入 SDK
初始化
完整示例
PKCE 安全
SDK 自动使用 PKCE 流程,无需 client_secret,安全可靠。
零配置
自动处理回调、Token 管理、用户信息获取,开发者只需关心业务。
轻量级
SDK 体积仅 ~3KB,对页面性能几乎无影响。
API 参考
直接调用 API 接口(不推荐使用 SDK 的情况下)。
授权端点
| 参数 | 类型 | 说明 |
|---|---|---|
| client_id | string | 必填。应用 ID |
| redirect_uri | string | 必填。回调地址 |
| pkce | boolean | 推荐启用。设为 true |
| code_challenge | string | PKCE 模式必填。SHA256(code_verifier) 的 base64url 编码 |
| code_challenge_method | string | 固定值 S256 |
| scope | string | 可选。默认 openid profile email |
| state | string | 可选。防 CSRF |
Token 交换
| 参数 | 类型 | 说明 |
|---|---|---|
| client_id | string | 必填。应用 ID |
| code | string | 必填。授权码 |
| grant_type | string | 固定值 authorization_code |
| code_verifier | string | PKCE 模式必填 |
获取用户信息
| 响应字段 | 类型 | 说明 |
|---|---|---|
| id | string | 用户唯一 ID |
| string | 邮箱地址 | |
| username | string | 用户名 |
| display_name | string | 显示名称 |
| avatar_url | string | 头像地址 |
| bio | string | 个人简介 |
| website | string | 个人网站 |
| location | string | 所在地 |
常见问题
接入需要后端吗?
不需要。使用 PKCE 模式 + SDK,完全前端接入,不需要任何后端代码。
Client Secret 有什么用?
PKCE 模式下不需要 client_secret。它是为普通 OAuth 模式保留的,我们强烈推荐使用 PKCE 模式。
支持哪些浏览器?
支持所有现代浏览器(Chrome 60+、Firefox 55+、Safari 11+、Edge 79+)。
Token 有效期多久?
access_token 有效期为 7 天。SDK 会自动管理 Token 的存储和验证。
如何获取用户信息?
SDK 的 onSuccess 回调中会返回完整的用户信息,或通过 sdk.getUser() 获取。
可以自定义登录按钮样式吗?
当然可以。SDK 只负责登录逻辑,不限制 UI 样式,你可以用任何按钮触发 sdk.login()。