# DAEL Lab Backend API Flask后端API服务器,提供用户认证、内容管理和数据API功能。 ## 安装和设置 ### 1. 安装依赖 ```bash cd backend pip install -r requirements.txt ``` ### 2. 配置环境变量 复制 `.env.example` 为 `.env` 并修改配置: ```bash cp .env.example .env ``` ### 3. 初始化数据库 ```bash python init_data.py ``` 这将创建数据库表和默认账户: - 管理员:`admin` / `admin123` - 测试用户:`user` / `user123` ### 4. 启动服务器 ```bash python app.py ``` 服务器将在 `http://localhost:5000` 启动。 ## API端点 ### 认证 - `POST /api/auth/register` - 用户注册 - `POST /api/auth/login` - 用户登录 - `POST /api/auth/logout` - 用户登出 - `GET /api/auth/check` - 检查认证状态 - `GET /api/auth/me` - 获取当前用户信息 ### 内容管理 - `GET /api/cms/articles` - 获取文章列表 - `GET /api/cms/articles/` - 获取单篇文章 - `POST /api/cms/articles` - 创建文章(管理员) - `PUT /api/cms/articles/` - 更新文章(管理员) - `DELETE /api/cms/articles/` - 删除文章(管理员) - `GET /api/cms/resources` - 获取资源列表 - `POST /api/cms/resources` - 上传资源(管理员) - `GET /api/cms/team` - 获取团队成员列表 - `POST /api/cms/team` - 创建团队成员(管理员) ### 其他API - `GET /api/download/` - 下载资源文件 - `GET /api/stats` - 获取统计数据(需登录) - `GET /api/protected-content` - 获取受保护内容(需登录) ## 数据库模型 - **User**: 用户模型 - **Article**: 文章/新闻模型 - **Resource**: 资源文件模型 - **TeamMember**: 团队成员模型 ## 开发说明 - 数据库文件存储在 `../data/dael.db` - 上传文件存储在 `../uploads/` - 使用SQLite作为开发数据库,生产环境建议使用PostgreSQL