模块化单体架构 · 支持多应用共享
为你的爱乐应用提供统一的认证、数据存储和文件管理服务,快速构建现代化的应用。
实时监控各服务运行状态
http://localhost:9000
http://localhost:8000
http://localhost:8081
http://localhost:9101
集成 Casdoor SSO,实现多应用单点登录,JWT Token 自动验证,基于角色的权限控制。
通过 UnifiedRecord 的 payload 字段支持任意 JSON 结构,一套 API 适应所有业务场景。
支持批量创建、更新、删除记录,最多 100 条,详细的错误报告和事务控制。
MinIO S3 兼容存储,支持图片、视频、PDF 等多种文件类型,直接上传和预签名两种模式。
RESTful API 设计,分页、排序、搜索功能齐全,软删除、版本控制、查看计数等企业级特性。
Docker Compose 一键部署,包含 MongoDB、Redis、PostgreSQL、MinIO 完整技术栈。
完整的 RESTful API,自动生成的交互式文档
http://localhost:9000/api/v1
Bearer Token (从 Casdoor 获取)
fetch('/api/v1/records', {
method: 'POST',
headers: {
'Authorization': 'Bearer ' + token,
'Content-Type': 'application/json'
},
body: JSON.stringify({
app_identifier: 'blog-app',
collection_type: 'post',
payload: { title: 'Hello World' },
is_published: true
})
}).then(res => res.json());
5 步完成应用接入
访问 Casdoor 管理后台,创建新应用,获取 Client ID 和 Secret。
使用 OAuth 2.0 协议集成 Casdoor,获取 JWT Token 进行后续 API 调用。
通过 API 创建 UnifiedRecord,在 payload 字段存储任意业务数据。
使用文件上传 API,将图片、视频等文件存储到 MinIO 对象存储。
完成开发和测试后,部署应用并配置 CORS 和域名。
完整的开发指南和 API 参考
访问 Casdoor 管理后台 (http://localhost:8000),创建应用后可在应用详情页面查看 Client ID 和 Client Secret。
payload 字段可以存储任何有效的 JSON 数据,包括对象、数组、字符串、数字等。理论上没有大小限制,但建议控制在合理范围内。
使用 app_identifier 和 collection_type 组合实现数据隔离。查询时使用 owner_id: 'current' 可以自动过滤当前用户的数据。
图片最大 50MB,视频和文档最大 500MB。如需上传更大文件,可以使用预签名 URL 直接上传到 MinIO。
在 .env 文件中配置 CORS_ORIGINS 环境变量,使用逗号分隔允许的前端域名。重启 backend 服务后生效。