接入与联调
申请客户端
怎么拿到 client_id、机密客户端与公开客户端怎么选、client_secret 能不能放前端、开发者平台为什么还没上线。
第一步该做什么
先去申请客户端拿到 client_id(机密客户端还有 client_secret),再按快速开始跑通一次完整流程。开发者平台尚未上线,目前由运营侧人工登记。
机密客户端还是公开客户端
| 类型 | 适用 | 有没有 client_secret |
|---|---|---|
机密客户端(web_client 服务端场景、service) | 有可信后端,能安全保管密钥 | 有 |
| 公开客户端(纯前端、移动端、桌面端) | 无法保密 | 无,仅用 client_id + PKCE |
判断标准只有一条:这个运行环境能不能保住密钥不被用户取走。前端、移动端包、桌面端都不能。
client_secret 能放在前端吗
不能。放在浏览器或移动端包里等于公开它。需要前端直连的场景,请单独登记一个无密钥的客户端,把「换令牌」留在服务端。
一个应用可以登记多个客户端吗
可以,而且通常应该这样做:Web 端、移动端、测试环境各自登记,回调地址与类型互不干扰。撤销或轮换密钥时也只影响对应的那个客户端。