LyEdu API 文档
编辑日期:2026-02-26
基于 ly-edu 项目结构整理
一、API 概览
LyEdu 提供 RESTful API,支持课程管理、学习跟踪、考试、证书、用户/部门等模块。前后端通过 JWT 进行认证。
在线文档
- Python 后端:http://localhost:9700/docs 或 http://localhost:9700/api-docs(启动后访问)
- Java 后端:http://localhost:8080/api-docs(若启用 SpringDoc)
根据实际使用的后端,访问对应地址查看交互式 API 文档。
二、认证方式
1. 用户名密码登录
bash
curl -X POST http://localhost:9700/api/auth/login \
-H "Content-Type: application/json" \
-d '{"username": "admin", "password": "123456"}'响应示例:
json
{
"access_token": "eyJhbGciOiJIUzI1NiIs...",
"token_type": "bearer",
"expires_in": 86400
}2. 携带 Token 调用
bash
curl -X GET http://localhost:9700/api/courses \
-H "Authorization: Bearer <your-token>"三、主要接口模块
以下为功能对照,具体路径以 Swagger / OpenAPI 文档为准:
| 模块 | 说明 | 典型路径 |
|---|---|---|
| 认证 | 登录、登出、刷新 token | /api/auth/* |
| 用户 | 用户 CRUD、部门关联 | /api/users/* |
| 部门 | 部门树、用户列表 | /api/departments/* |
| 课程 | 课程、章节、视频、附件 | /api/courses/* |
| 学习 | 学习进度、学习记录 | /api/learning/* |
| 考试 | 题库、试卷、考试、成绩 | /api/exams/* |
| 证书 | 证书、证书模板 | /api/certificates/* |
| 任务 | 周期任务、新员工任务 | /api/tasks/* |
| 知识库 | 知识中心、文档 | /api/knowledge/* |
| 积分 | 积分规则、流水、排行 | /api/points/* |
| 系统 | 系统配置、图片库 | /api/system/* |
四、通用响应格式
成功
json
{
"code": 0,
"message": "success",
"data": { ... }
}失败
json
{
"code": 400,
"message": "错误描述",
"detail": "可选详情"
}五、常见状态码
| HTTP 状态码 | 说明 |
|---|---|
| 200 | 成功 |
| 201 | 创建成功 |
| 400 | 请求参数错误 |
| 401 | 未认证或 token 失效 |
| 403 | 无权限 |
| 404 | 资源不存在 |
| 500 | 服务器错误 |
业务错误码见 错误码说明。
六、接口调用示例
获取课程列表
bash
curl -X GET "http://localhost:9700/api/courses?page=1&size=10" \
-H "Authorization: Bearer <token>"上传文件
bash
curl -X POST http://localhost:9700/api/files/upload \
-H "Authorization: Bearer <token>" \
-F "file=@/path/to/file.pdf"具体字段与分页参数以实际 API 文档为准。
七、Postman / 前端对接
- 从 Swagger 导出 OpenAPI JSON
- 导入 Postman 自动生成请求集合
- 前端在
api/目录封装 Axios 调用,统一添加Authorization头
