游戏内 API 集成:临时密钥与账号关联
itch.io 提供游戏内 API,让作品在运行时验证玩家身份、读写购买信息。客户端是这条链路的配钥匙人:游戏由它启动时,它会交给游戏一把临时 API 密钥。
工作机制
- 开发者在 应用清单 里声明需要的 API 作用域。
- 玩家从客户端启动游戏。
- 客户端基于当前登录的账号会话生成临时密钥,通过环境注入交给游戏。
- 游戏用密钥调用 itch.io API,完成身份关联与数据读取。
密钥是临时的、随启动会话生成的,生命周期与权限都受限——这正是沙盒之外的第二重保险:游戏拿到的不可能是永久凭据。
典型场景
- 账号内购验证:确认玩家真的在 itch.io 买过,解锁内容。
- 云同步类功能:把进度挂到账号而不是本地。
- 排行榜/多人匹配:以 itch.io 身份体系做轻量后端。
集成的另一面
- 玩家侧:如果游戏不经过客户端启动(比如 Steam 直连快捷方式,见 Steam 快捷方式),它拿不到密钥,依赖 API 的功能会失效——这是 direct 模式的固有代价。
- 无头启动(itch-setup --run-game)走正常启动配置,密钥照常注入。
从哪里开始
API 的完整接口定义、鉴权细节与示例代码在官方开发者文档区,本文只覆盖客户端在其中扮演的角色。开发阶段想看应用视角的调用细节,查看应用日志 能提供不少线索。