跳到主要内容

CaelLabID 开发者守则

写在前面

CaelLabID 是一个面向青少年编程社区的开放平台。我们相信好的技术生态需要大家一起维护。这份守则不是冰冷的限制条款,而是我们对开发者的期望和约定——希望大家一起把生态做好。


应用注册与管理

  • 注册应用时,请如实填写应用名称、描述和图标,不要冒充其他应用或误导用户;
  • 为你的应用选择合适的 scope,只申请你真正需要的权限;
  • 如果应用不再使用,建议在 仪表盘 中禁用或删除,避免留下不必要的授权记录。

客户端凭证安全

  • client_secret 是你的应用身份凭证,请妥善保管,不要提交到公开仓库或写在前端代码中;
  • 如果 client_secret 可能已经泄露,请立即在仪表盘中重置;
  • 建议在服务端完成 Token 交换,不要在客户端直接暴露 client_secret

OAuth 流程规范

接入 CaelLabID 时,请遵循以下规范:

授权请求

  • 始终传递 state 参数,用于防止 CSRF 攻击;
  • redirect_uri 必须与你注册时填写的回调地址完全一致(包括协议、域名、路径);
  • 不要在 redirect_uri 中使用通配符或动态拼接。

Token 使用

  • Token 有效期有限(Access Token 1 小时,Refresh Token 30 天),请及时刷新;
  • 不要在前端代码中存储 Token,建议在服务端管理;
  • 调用 /api/userinfo 等接口时,使用 Authorization: Bearer Header 方式传递 Token;
  • 如果需要撤销 Token,调用 /oauth/revoke 端点。

Refresh Token 轮换

每次使用 Refresh Token 刷新时,旧的 Refresh Token 会自动失效。请在你的应用中及时保存新的 Refresh Token。


用户信息保护

  • 获取到的用户信息(如 subusernameemail 等)仅用于你声明的用途;
  • 不要将从 CaelLabID 获取的用户信息用于与授权目的无关的用途;
  • 不要将用户信息出售、出租或转让给第三方;
  • 不同应用之间的用户标识(subject_id)是独立的,不要尝试通过技术手段关联同一用户在不同应用中的身份。

内容与行为规范

发布在 CaelLabID 开放平台上的应用和内容,请遵守以下约定:

  • 不要发布违反所在地区法律法规的应用;
  • 不要发布含有恶意代码、病毒、间谍软件等危害用户安全的内容;
  • 不要利用 CaelLabID 的登录功能从事钓鱼、欺诈或其他恶意活动;
  • 不要滥用 API 频率限制,不要对平台发起自动化攻击或大规模请求。

频率限制

请注意各端点的频率限制:

端点限制
/oauth/token30 次/分钟(IP)
/api/userinfo60 次/分钟(IP)
/api/token-info30 次/分钟(IP)

超限会返回 HTTP 429 响应,响应头中包含 Retry-After 字段。请在你的应用中做好限流处理。


社区精神

作为青少年编程社区的一员,我们鼓励:

  • 互相帮助:在开发过程中遇到问题,欢迎在 虚舟实验室论坛 或 GitHub 上交流;
  • 分享经验:如果你有好的接入经验或最佳实践,欢迎分享给其他开发者;
  • 反馈问题:发现平台的 Bug 或有改进建议,请通过邮件或 Issue 告诉我们;
  • 开源贡献:如果你基于 CaelLabID 开发了有趣的项目,欢迎开源分享。

违约处理

如果你的开发行为违反了本守则或 服务协议,我们可能会:

  • 先通过邮件提醒你,希望你能调整;
  • 如果情况严重或多次提醒未改善,可能会暂时限制你的应用访问权限;
  • 极端情况下,可能会终止你的账号。

我们不喜欢这样做,但如果为了保护用户安全,不得不这么做时也会果断行动。


联系方式

如果你对本守则有任何疑问或建议:

📧 [email protected]


虚舟实验室 CaelLabID 2026 年 6 月 29 日