浏览全部文档 · 29/37

功能简介

仓库包含 Web、Android、Apple、Flutter、React Native 以及多种 Server SDK 的源码、生成产物、文档或测试。这个证据说明代码面覆盖多个语言,但不能证明每个包、每个版本都已同步发布到对应 Registry。

当前支持范围

  • 多语言 SDK(PARTIAL):仓库提供 Web、移动端和多种服务端语言的 SDK 源码、生成产物与类型契约;具体包是否已发布须按语言和版本单独确认。

适用场景

  • 按 Web、移动端或服务端运行环境选择 SDK。
  • 核对方法签名、Model 与错误类型。
  • 在 REST 已实现但目标 SDK 尚未生成时采用明确的 HTTP 过渡方案。

前置条件

  • 先从 Registry/制品仓确认目标包与版本实际存在。
  • 确认 SDK 的 response format 与服务端版本兼容。
  • 客户端 SDK 不保存 API Key;服务端 SDK 才使用 Key。

Console 操作路径

Console 的集成或 Quick Start 页面可提供初始化信息,但安装命令必须以实际 Registry 为准。不要从 Console SDK 的存在推断终端应用包已经发布。

SDK 示例

SDK · TypeScript
import { Client } from 'appbase-web-sdk';

const client = new Client()
  .setEndpoint('https://<APPBASE_HOST>/v1')
  .setProject('<PROJECT_ID>');
import { Account, TablesDB, Storage, Functions, Realtime } from 'appbase-web-sdk';

const account = new Account(client);
const tables = new TablesDB(client);
const storage = new Storage(client);
const functions = new Functions(client);
const realtime = new Realtime(client);
void [account, tables, storage, functions, realtime];

REST 示例

REST · Bash
# SDK 最终发送的请求仍是版本化 REST;下面仅用于确认服务端版本。
curl 'https://<APPBASE_HOST>/v1/health/version'

权限模型

Web/Mobile SDK 以 Session/JWT 和资源 Permission 为主;Server/Console SDK 可设置 API Key,但必须最小 Scope。不同 SDK 的身份类型不能互相替代。

常见错误

现象处理建议
Registry 找不到包该语言/版本可能尚未发布;回到源码生成证据不等于发布证据。
方法或 Model 缺失核对 SDK 生成 Commit 与服务端 Commit,必要时使用已验证 REST。
response format 不兼容升级 SDK 或选择与服务端匹配的版本。

当前限制

  • 不承诺所有语言、所有新能力同步生成与发布。
  • Console SDK 属于控制面,不应作为普通终端应用 SDK。
  • 开发者 CLI 没有独立 Package/测试证据,不进入公开主导航。

Appwrite 兼容说明

SDK 分类和 Client/Server 区分保持兼容;包名、版本与实际导出来自 AppBase 仓库。

AppBase 增强说明

AppBase SDK 增加 TablesDB、LLM Gateway、Memory、Organization 等实现,但发布状态必须逐包核对。

发布状态和验证 Commit

origin/main 条件支持。验证 Commit:0363062a1c7ea08741975bb5ba0c3361663c9353;使用前必须同时满足本页“当前限制”。

权威来源文件列表

  • backend-candidate:packages/sdks/client-*
  • backend-candidate:packages/sdks/server-*
  • backend-candidate:tests/unit/SDK/
  • origin-main:docs/products/v2.3.x/sdks/

Appwrite taxonomy 仅作信息架构参考:https://appwrite.io/docs/sdks。上游页面不是 AppBase 实现证据。

继续阅读