- 添加 target/ 到 .gitignore - 从 git 暂存区移除已追踪的 target 目录 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2.7 KiB
2.7 KiB
前端 API 路径对齐修复总结
修复日期
2026-03-13
问题背景
后端所有 Controller 统一使用 /api/v1/ 前缀:
- 超管端:
/api/v1/admin/* - 学校端:
/api/v1/school/* - 教师端:
/api/v1/teacher/* - 家长端:
/api/v1/parent/* - 认证:
/api/v1/auth/* - 文件:
/api/v1/files/*
但前端适配层的 API 路径缺少 /v1 前缀,导致请求失败。
修复的文件
1. 适配层文件(手动修复)
| 文件 | 修复内容 |
|---|---|
src/api/auth.ts |
/auth/xxx → /v1/auth/xxx |
src/api/school.ts |
/school/xxx → /v1/school/xxx |
src/api/teacher.ts |
使用生成的 API,无需手动修复 |
src/api/parent.ts |
/parent/xxx → /v1/parent/xxx |
src/api/growth.ts |
/school/xxx → /v1/school/xxx/teacher/xxx → /v1/teacher/xxx |
src/api/task.ts |
/school/xxx → /v1/school/xxx/teacher/xxx → /v1/teacher/xxx |
src/api/resource.ts |
/admin/xxx → /v1/admin/xxx |
src/api/package.ts |
/school/xxx → /v1/school/xxx |
src/api/file.ts |
已正确使用 /api/v1/files ✅ |
2. 生成的 API 文件(自动修复)
| 文件 | 修复方式 |
|---|---|
src/api/generated/index.ts |
使用 sed 批量替换:/api/xxx → /api/v1/xxx |
3. Orval 配置(预防未来问题)
| 文件 | 修复内容 |
|---|---|
orval.config.ts |
添加 transformer 配置,在生成时自动修复路径 |
验证方法
1. 启动服务
# 启动后端
cd reading-platform-java
mvn spring-boot:run
# 启动前端(新终端)
cd reading-platform-frontend
npm run dev
2. 测试 API 调用
使用浏览器开发者工具检查 API 请求路径:
- 登录功能(
/v1/auth/login) - 学校端接口(
/v1/school/xxx) - 教师端接口(
/v1/teacher/xxx) - 家长端接口(
/v1/parent/xxx) - 超管端接口(
/v1/admin/xxx)
3. 运行 E2E 测试
npm run test:e2e
注意事项
- 生成的 API 文件:
src/api/generated/index.ts是 Orval 自动生成的,不应手动修改 - 重新生成: 当需要重新生成 API 时,确保后端服务正在运行,然后执行:
npm run api:update - orval 配置:
orval.config.ts中已添加 transformer,下次生成时会自动修复路径
修复完成检查清单
- auth.ts API 路径修复
- school.ts API 路径修复
- parent.ts API 路径修复
- growth.ts API 路径修复
- task.ts API 路径修复
- resource.ts API 路径修复
- package.ts API 路径修复
- generated/index.ts 路径修复
- orval.config.ts 配置更新