功能简介
AppBase 以 Project 为资源和权限边界,保留身份、数据、文件、计算与实时事件这些应用后端能力,并加入组织治理、数据结构演进和 AI 应用所需的模型、知识、记忆与内容安全组件。它提供的是可组合后端基础设施,而不是替应用决定业务流程。
当前支持范围
- 身份认证与账号(SUPPORTED):为应用提供注册、登录、会话、JWT、多因素认证、账号验证与用户管理;具体登录渠道由项目配置决定。
- 数据库(SUPPORTED):在项目边界内创建和管理数据库,并通过权限化 API 组织结构与数据。
- 对象存储(SUPPORTED):统一管理 Bucket、File、分片上传、下载与预览,并沿用项目和资源权限模型。
- 云函数(SUPPORTED):创建、部署和执行函数,并按事件或计划触发计算任务;运行时需要实例配置构建器与执行器。
- 实时订阅(SUPPORTED):通过 WebSocket 按频道订阅账号、数据、文件、函数等事件,并在发送前应用项目权限过滤。
- Agent 后端组合能力(APPBASE_ENHANCED):可组合 Models、Knowledge Base、Memory、Moderation、Functions 与项目权限,作为 Agent 应用的后端基础设施;这不是统一 Agent 生命周期运行时。
适用场景
- 为 Web、移动端或服务端应用建立统一后端。
- 在同一 Project 内组合 Auth、TablesDB、Storage、Functions 与 Realtime。
- 为 RAG、长期记忆或内容审核型 Agent 应用准备受权限约束的数据面。
前置条件
- 可访问一个 AppBase 实例。
- 已创建 Organization 与 Project,或由管理员提供 Project ID。
- 根据调用位置选择用户 Session/JWT 或最小 Scope 的 API Key。
Console 操作路径
登录 Console 后先选择 Organization,再进入目标 Project。核心服务位于 Project 左侧导航;Organization 管理、成员与配额位于组织级页面。页面是否显示还受实例开关和当前角色影响。
SDK 示例
import { Client } from 'appbase-web-sdk';
const client = new Client()
.setEndpoint('https://<APPBASE_HOST>/v1')
.setProject('<PROJECT_ID>');
// 以当前用户身份读取账号,确认 endpoint、project 与 Session 可用。
import { Account } from 'appbase-web-sdk';
const account = new Account(client);
const me = await account.get();REST 示例
curl 'https://<APPBASE_HOST>/v1/account' \
-H 'X-Appwrite-Project: <PROJECT_ID>' \
-H 'X-Appwrite-JWT: <USER_JWT>'常见错误
| 现象 | 处理建议 |
|---|---|
401 或 user_unauthorized | 确认请求使用了当前接口允许的 Session、JWT 或 API Key;不要把 Console Session 与 Project API Key 混用。 |
403 或 general_access_forbidden | 检查 API Key Scope、组织角色以及资源级 Permission;认证成功不等于拥有目标操作权限。 |
404 | 核对资源 ID 与 Project;不可见资源可能与不存在资源使用相同响应,客户端不应据此探测资源。 |
429 | 按响应的限流语义退避,避免并发重试放大请求。 |
当前限制
- Messaging、Sites、Self-hosting 与网络能力带有实例依赖,必须阅读各自边界页。
- Agent 能力是 Models、Knowledge Base、Memory、Moderation、Functions 与权限的组合,不存在统一 Agent 实例或 Run 生命周期 API。
Appwrite 兼容说明
分类上沿用 Auth、Databases、Storage、Functions、Messaging、Sites、API 与 Realtime 等熟悉术语;正文、示例和能力结论均由 AppBase 代码与测试独立推导。
AppBase 增强说明
相较基础 BaaS,AppBase 的已核验增强集中在 Organization、Column Comment、Aggregation、Schema Version、LLM Gateway、Knowledge Base、Memory 与 Moderation。
发布状态和验证 Commit
origin/main 已核验。验证 Commit:0363062a1c7ea08741975bb5ba0c3361663c9353。
权威来源文件列表
backend-candidate:app/controllers/api/account.phpbackend-candidate:app/realtime.phpbackend-candidate:src/Appwrite/Platform/Modules/Account/Services/Http.phpbackend-candidate:src/Appwrite/Platform/Modules/Databases/Http/TablesDB/Create.phpbackend-candidate:src/Appwrite/Platform/Modules/Databases/Http/TablesDB/XList.phpbackend-candidate:src/Appwrite/Platform/Modules/Functions/Http/Functions/backend-candidate:src/Appwrite/Platform/Modules/Storage/Http/Buckets/backend-candidate:tests/e2e/Services/Account/AccountCustomClientTest.phpbackend-candidate:tests/e2e/Services/Databases/DatabasesBase.phpbackend-candidate:tests/e2e/Services/Functions/FunctionsCustomServerTest.phpbackend-candidate:tests/e2e/Services/Realtime/backend-candidate:tests/e2e/Services/Storage/StorageBase.phpfrontend-candidate:console/src/routes/(console)/project-[region]-[project]/auth/frontend-candidate:console/src/routes/(console)/project-[region]-[project]/databases/frontend-candidate:console/src/routes/(console)/project-[region]-[project]/functions/frontend-candidate:console/src/routes/(console)/project-[region]-[project]/storage/frontend-candidate:packages/sdks/client-web/src/services/realtime.tsorigin-main:src/Appwrite/Platform/Modules/Functions/origin-main:src/Appwrite/Platform/Modules/KnowledgeBases/origin-main:src/Appwrite/Platform/Modules/LLMGateway/origin-main:src/Appwrite/Platform/Modules/Memory/origin-main:src/Appwrite/Platform/Modules/Moderation/
Appwrite taxonomy 仅作信息架构参考:https://appwrite.io/docs/apis/realtime、https://appwrite.io/docs/products/auth、https://appwrite.io/docs/products/databases、https://appwrite.io/docs/products/functions、https://appwrite.io/docs/products/storage、https://appwrite.io/docs/tooling/ai。上游页面不是 AppBase 实现证据。