用途:处理 SpacetimeDB HTTP 路由行为与请求构造,覆盖身份、数据库操作、reducer 调用、SQL 执行、schema 元数据、日志与 energy 端点等。
主要能力与用法:多数 HTTP 端点接受 Authorization: Bearer <token>;不带该头时,数据库端点通常分配或使用匿名身份,仅能访问公开表。POST /v1/identity 返回 { "identity": string, "token": string }。POST /v1/database/:name_or_identity/call/:reducer 调用 reducer 或 procedure,请求体为 JSON 参数数组。POST /v1/database/:name_or_identity/sql 运行以 ; 分隔的一条或多条 SQL,返回带 schema 与行的 JSON 语句结果。GET /v1/database/:name_or_identity/schema?version=... 返回 RawModuleDef JSON,对应 spacetime describe。GET /v1/database/:name_or_identity/logs 需数据库所有权,对应 spacetime logs。WebSocket 订阅使用 /v1/database/:name_or_identity/subscribe,子协议为 v1.bsatn.spacetimedb 或 v1.json.spacetimedb;除非构建自定义工具,优先使用 SDK。
限制与注意:管理端点主要供工具、调试和管理使用,正常应用流量应使用 SDK WebSocket 客户端;匿名 HTTP reducer 调用会向 ReducerContext 传入匿名身份,模块鉴权逻辑可能拒绝;匿名调用者的 HTTP SQL 仅能看到公开行,并受 RLS 约束;编写非平凡查询字符串前,SQL 语法问题应转至 spacetimedb-sql;SDK 连接问题应转至 spacetimedb-clients。
参考:授权头与 ping 见 references/http-authorization.md;数据库端点见 references/http-database.md;身份端点见 references/http-identity.md。给出端点示例时需包含必需的 bearer token 行为。未提供的信息中,energy 端点细节、具体版本要求与收费情况暂未说明。