fix(api): 移除评论导出接口的站点筛选功能

移除评论导出接口的站点筛选功能,现在导出所有站点的评论数据。同时更新相关文档,移除站点隔离相关的API说明,并修复文档组件的内存泄漏问题。导入接口现在支持自动识别和转换第三方评论系统数据格式,并修复站点ID字段的导入问题。

- 移除 `/admin/comments/export` 接口的 `siteId` 查询参数
- 更新数据导入文档,说明第三方评论系统自动转换功能
- 修复文档组件页面切换时的配置更新和内存泄漏
- 修复评论和统计数据的导入逻辑,确保站点ID字段正确保存
- 更新数据库表结构,为统计相关表添加站点ID字段和联合唯一约束
This commit is contained in:
anghunk
2026-02-09 16:52:48 +08:00
parent a698734df5
commit ac87af705f
9 changed files with 72 additions and 116 deletions

View File

@@ -37,62 +37,6 @@ CWD 评论系统支持通过 `siteId` 参数实现多站点数据隔离。当你
- 避免使用特殊字符和空格
- 建议使用有意义的名称,便于识别不同站点
## API 调用
### 公开 API
当使用站点隔离功能时,所有公开 API 请求都需要在查询参数中携带 `siteId`
```javascript
// 获取评论列表
GET /api/comments?post_slug=hello-world&siteId=blog
// 提交评论
POST /api/comments
{
"post_slug": "hello-world",
"name": "张三",
"email": "zhangsan@example.com",
"content": "很棒的文章!"
}
// 请求头X-Site-Id: blog
// 获取配置
GET /api/config/comments?siteId=blog
```
### 管理后台 API
管理后台同样支持通过 `siteId` 参数进行数据筛选:
```javascript
// 获取评论列表
GET /admin/comments/list?siteId=blog
// 导出评论数据
GET /admin/comments/export?siteId=blog
// 获取评论统计数据
GET /admin/stats/comments?siteId=blog
// 获取访问统计概览
GET /admin/analytics/overview?siteId=blog
// 获取页面访问统计
GET /admin/analytics/pages?siteId=blog
// 获取点赞统计数据
GET /admin/likes/stats?siteId=blog
// 导出统计数据
GET /admin/export/stats?siteId=blog
```
说明:
- 当提供 `siteId` 参数且不为 `default` 时,接口仅返回该站点下的数据
- 不提供 `siteId` 参数时,返回所有站点的数据
## 多站点示例
如果你有多个站点,可以为每个站点配置不同的 `siteId`