Casbin-Forum RESTful API 接口详解
2025-07-09 04:19:50作者:段琳惟
概述
Casbin-Forum 是一个基于 Casbin 权限管理系统的论坛项目,提供了完整的 RESTful API 接口。本文档将详细介绍这些 API 的功能和使用方法,帮助开发者更好地集成和使用 Casbin-Forum 的功能。
API 基础信息
- 当前版本:1.70.0
- 基础路径:/api
- 支持协议:HTTP 和 HTTPS
主要功能模块
1. 文件管理 API
文件管理 API 提供了对论坛中文件的上传、激活和删除等功能。
激活文件
POST /activate-file
参数:
- key: 文件唯一标识
- filename: 文件名
添加文件
POST /add-file
参数:
- store: 文件存储位置
- key: 文件唯一标识
- isLeaf: 是否为叶子节点
- filename: 文件名
删除文件
POST /delete-file
参数:
- store: 文件存储位置
- key: 文件唯一标识
- isLeaf: 是否为叶子节点
2. 文章管理 API
文章是论坛的核心内容,相关 API 提供了完整的 CRUD 操作。
添加文章
POST /add-article
请求体需要包含完整的文章对象信息。
获取文章
GET /get-article
参数:
- id: 文章唯一标识(格式为owner/name)
获取用户所有文章
GET /get-articles
参数:
- owner: 文章所有者
获取全局文章
GET /get-global-articles
无需参数,返回所有公开文章
3. 聊天管理 API
论坛中的聊天功能相关 API。
添加聊天
POST /add-chat
请求体需要包含完整的聊天对象信息。
获取聊天
GET /get-chat
参数:
- id: 聊天唯一标识
获取用户聊天列表
GET /get-chats
参数:
- user: 用户标识
- field: 查询字段
- value: 查询值
4. 消息管理 API
聊天消息相关的操作接口。
添加消息
POST /add-message
请求体需要包含完整的消息对象信息。
获取消息列表
GET /get-Messages
参数:
- user: 用户标识
- chat: 聊天标识
获取AI回答
GET /get-answer
参数:
- provider: 服务提供商
- question: 问题内容
- framework: 框架类型
- video: 视频标识
5. 权限管理 API
基于 Casbin 的权限管理接口。
添加权限
POST /add-permission
请求体需要包含完整的权限对象信息。
删除权限
POST /delete-permission
请求体需要包含完整的权限对象信息。
6. 其他功能 API
获取用户资料
GET /get-account
返回当前登录用户的资料信息。
获取活跃文件
GET /get-active-file
参数:
- prefix: 文件前缀
数据结构
所有 API 返回的统一响应格式包含:
- 状态码
- 消息
- 数据内容
主要数据对象包括:
- Article: 文章对象
- Chat: 聊天对象
- Message: 消息对象
- Permission: 权限对象
- File: 文件对象
最佳实践
- 调用 API 前确保已获取有效认证
- 批量操作时注意频率限制
- 重要操作(如删除)需二次确认
- 使用 HTTPS 确保通信安全
- 合理使用缓存减少API调用
总结
Casbin-Forum 提供了完善的 RESTful API 接口,覆盖了论坛系统的核心功能。开发者可以通过这些接口实现自定义的前端界面或与其他系统的集成。建议在实际使用前充分测试各接口功能,并根据业务需求选择合适的接口组合。