585 lines
18 KiB
Markdown
585 lines
18 KiB
Markdown
# 接口分类重构计划
|
||
|
||
## 一、重构目标
|
||
|
||
将所有后端接口按照使用端分成四类,通过文件夹和路由前缀清晰区分:
|
||
|
||
1. **应用端 (app)** - 小程序C端用户使用的接口
|
||
2. **商家端 (merchant)** - 小程序商家端 + 商家管理后台使用的接口
|
||
3. **平台管理端 (admin)** - 平台管理后台使用的接口
|
||
4. **官网 (website)** - 官方网站使用的接口
|
||
|
||
## 二、目标目录结构
|
||
|
||
```
|
||
apps/server/src/modules/
|
||
├── app/ # 应用端接口 (路由前缀: /api/app/*)
|
||
│ ├── auth/ # 用户认证
|
||
│ ├── profile/ # 用户资料
|
||
│ ├── order/ # 订单管理
|
||
│ ├── review/ # 评价管理
|
||
│ ├── coupon/ # 优惠券
|
||
│ ├── guest/ # 入住人管理
|
||
│ ├── activity/ # 活动/邀请
|
||
│ ├── finance/ # 钱包/提现
|
||
│ └── app.module.ts
|
||
│
|
||
├── merchant/ # 商家端接口 (路由前缀: /api/merchant/*)
|
||
│ ├── auth/ # 商家认证
|
||
│ ├── profile/ # 商家资料
|
||
│ ├── room/ # 房源管理
|
||
│ ├── room-calendar/ # 房态日历
|
||
│ ├── order/ # 订单管理
|
||
│ ├── review/ # 评价管理
|
||
│ ├── statistics/ # 数据统计
|
||
│ ├── finance/ # 财务管理
|
||
│ └── merchant.module.ts
|
||
│
|
||
├── admin/ # 平台管理端接口 (路由前缀: /api/admin/*)
|
||
│ ├── auth/ # 管理员认证
|
||
│ ├── user/ # 用户管理
|
||
│ ├── merchant/ # 商家管理
|
||
│ ├── room/ # 房源管理
|
||
│ ├── order/ # 订单管理
|
||
│ ├── review/ # 评价管理
|
||
│ ├── coupon/ # 优惠券管理
|
||
│ ├── activity/ # 活动管理
|
||
│ ├── config/ # 系统配置
|
||
│ ├── website/ # 官网内容管理
|
||
│ ├── finance/ # 财务管理
|
||
│ │ ├── account/ # 账户管理
|
||
│ │ ├── transaction/ # 交易记录
|
||
│ │ ├── withdrawal/ # 提现管理
|
||
│ │ ├── settlement/ # 结算管理
|
||
│ │ ├── reconciliation/# 对账管理
|
||
│ │ └── report/ # 财务报表
|
||
│ └── admin.module.ts
|
||
│
|
||
├── website/ # 官网接口 (路由前缀: /api/website/*)
|
||
│ ├── info/ # 网站信息
|
||
│ ├── room/ # 房源展示(公开)
|
||
│ ├── merchant/ # 商家展示(公开)
|
||
│ └── website.module.ts
|
||
│
|
||
└── shared/ # 共享模块(不对外暴露路由)
|
||
├── upload/ # 文件上传
|
||
└── config/ # 配置服务
|
||
```
|
||
|
||
## 三、接口分类详情
|
||
|
||
### 3.1 应用端接口 (48个接口)
|
||
|
||
**路由前缀**: `/api/app/*`
|
||
|
||
| 模块 | 当前路由 | 新路由 | 文件位置 |
|
||
|------|---------|--------|----------|
|
||
| 用户认证 | `/user/auth/*` | `/api/app/auth/*` | user/auth/ |
|
||
| 用户资料 | `/user/profile/*` | `/api/app/profile/*` | user/profile/ |
|
||
| 订单管理 | `/user/orders/*` | `/api/app/orders/*` | user/order/ |
|
||
| 评价管理 | `/user/reviews/*` | `/api/app/reviews/*` | user/review/ |
|
||
| 优惠券 | `/user/coupons/*` | `/api/app/coupons/*` | user/coupon/ |
|
||
| 入住人 | `/user/guests/*` | `/api/app/guests/*` | user/guest/ |
|
||
| 活动邀请 | `/user/activity/invite/*` | `/api/app/activity/*` | user/activity/ |
|
||
| 钱包财务 | `/user/finance/*` | `/api/app/finance/*` | user/finance/ |
|
||
|
||
**涉及的Controller文件**:
|
||
- `user/auth/auth.controller.ts`
|
||
- `user/profile/profile.controller.ts`
|
||
- `user/order/order.controller.ts`
|
||
- `user/review/review.controller.ts`
|
||
- `user/coupon/coupon.controller.ts`
|
||
- `user/guest/guest.controller.ts`
|
||
- `user/activity/activity.controller.ts`
|
||
- `common/finance/finance-user.controller.ts`
|
||
- `common/finance/withdrawal-user.controller.ts`
|
||
- `common/coupon/coupon-user.controller.ts`
|
||
|
||
### 3.2 商家端接口 (56个接口)
|
||
|
||
**路由前缀**: `/api/merchant/*`
|
||
|
||
| 模块 | 当前路由 | 新路由 | 文件位置 |
|
||
|------|---------|--------|----------|
|
||
| 商家认证 | `/merchant/auth/*` | `/api/merchant/auth/*` | merchant/auth/ |
|
||
| 商家资料 | `/merchant/profile/*` | `/api/merchant/profile/*` | merchant/profile/ |
|
||
| 房源管理 | `/merchant/rooms/*` | `/api/merchant/rooms/*` | merchant/room/ |
|
||
| 房态日历 | `/merchant/room-calendar/*` | `/api/merchant/room-calendar/*` | merchant/room-calendar/ |
|
||
| 订单管理 | `/merchant/orders/*` | `/api/merchant/orders/*` | merchant/order/ |
|
||
| 评价管理 | `/merchant/reviews/*` | `/api/merchant/reviews/*` | merchant/review/ |
|
||
| 数据统计 | `/merchant/statistics/*` | `/api/merchant/statistics/*` | merchant/statistics/ |
|
||
| 财务管理 | `/merchant/finance/*` | `/api/merchant/finance/*` | merchant/finance/ |
|
||
|
||
**涉及的Controller文件**:
|
||
- `merchant/auth/auth.controller.ts`
|
||
- `merchant/profile/profile.controller.ts`
|
||
- `merchant/room/room.controller.ts`
|
||
- `merchant/room-calendar/room-calendar.controller.ts`
|
||
- `merchant/order/order.controller.ts`
|
||
- `merchant/review/review.controller.ts`
|
||
- `merchant/statistics/statistics.controller.ts`
|
||
- `merchant/finance/finance.controller.ts`
|
||
- `common/finance/transaction-seller.controller.ts`
|
||
- `common/finance/withdrawal-merchant.controller.ts`
|
||
- `common/finance/settlement-merchant.controller.ts`
|
||
|
||
### 3.3 平台管理端接口 (72个接口)
|
||
|
||
**路由前缀**: `/api/admin/*`
|
||
|
||
| 模块 | 当前路由 | 新路由 | 文件位置 |
|
||
|------|---------|--------|----------|
|
||
| 管理员认证 | `/admin/auth/*` | `/api/admin/auth/*` | admin/auth/ |
|
||
| 用户管理 | `/admin/users/*` | `/api/admin/users/*` | admin/user/ |
|
||
| 商家管理 | `/admin/merchants/*` | `/api/admin/merchants/*` | admin/merchant/ |
|
||
| 房源管理 | `/admin/rooms/*` | `/api/admin/rooms/*` | admin/room/ |
|
||
| 订单管理 | `/admin/orders/*` | `/api/admin/orders/*` | admin/order/ |
|
||
| 评价管理 | `/admin/reviews/*` | `/api/admin/reviews/*` | admin/review/ |
|
||
| 优惠券管理 | `/admin/coupons/*` | `/api/admin/coupons/*` | admin/coupon/ |
|
||
| 活动管理 | `/admin/activity/*` | `/api/admin/activity/*` | admin/activity/ |
|
||
| 系统配置 | `/admin/config/*` | `/api/admin/config/*` | admin/config/ |
|
||
| 官网管理 | `/admin/website/info/*` | `/api/admin/website/*` | admin/website/ |
|
||
| 账户管理 | `/admin/finance/accounts/*` | `/api/admin/finance/accounts/*` | admin/finance/ |
|
||
| 交易记录 | `/admin/finance/transactions/*` | `/api/admin/finance/transactions/*` | admin/finance/ |
|
||
| 提现管理 | `/admin/finance/withdrawals/*` | `/api/admin/finance/withdrawals/*` | admin/finance/ |
|
||
| 结算管理 | `/admin/finance/settlements/*` | `/api/admin/finance/settlements/*` | admin/finance/ |
|
||
| 对账管理 | `/admin/finance/reconciliations/*` | `/api/admin/finance/reconciliations/*` | admin/finance/ |
|
||
| 财务报表 | `/admin/finance/reports/*` | `/api/admin/finance/reports/*` | admin/finance/ |
|
||
|
||
**涉及的Controller文件**:
|
||
- `admin/auth/auth.controller.ts`
|
||
- `admin/user/user.controller.ts`
|
||
- `admin/merchant/merchant.controller.ts`
|
||
- `admin/room/room.controller.ts`
|
||
- `admin/order/order.controller.ts`
|
||
- `admin/review/review.controller.ts`
|
||
- `admin/coupon/coupon.controller.ts`
|
||
- `admin/activity/activity.controller.ts`
|
||
- `admin/config/config.controller.ts`
|
||
- `admin/website/website.controller.ts`
|
||
- `common/finance/account-admin.controller.ts`
|
||
- `common/finance/transaction-admin.controller.ts`
|
||
- `common/finance/withdrawal-admin.controller.ts`
|
||
- `common/finance/settlement-admin.controller.ts`
|
||
- `common/finance/reconciliation-admin.controller.ts`
|
||
- `common/finance/report-admin.controller.ts`
|
||
- `common/coupon/coupon-admin.controller.ts`
|
||
|
||
### 3.4 官网接口 (12个接口)
|
||
|
||
**路由前缀**: `/api/website/*`
|
||
|
||
| 模块 | 当前路由 | 新路由 | 文件位置 |
|
||
|------|---------|--------|----------|
|
||
| 网站信息 | `/website/info/*` | `/api/website/info/*` | website/info/ |
|
||
| 房源展示 | `/public/rooms/*` | `/api/website/rooms/*` | website/room/ |
|
||
| 商家展示 | `/public/merchants/*` | `/api/website/merchants/*` | website/merchant/ |
|
||
|
||
**涉及的Controller文件**:
|
||
- `website/info/info.controller.ts`
|
||
- 需要新建: `website/room/room.controller.ts` (公开房源查询)
|
||
- 需要新建: `website/merchant/merchant.controller.ts` (公开商家查询)
|
||
|
||
## 四、执行步骤
|
||
|
||
### 步骤1: 重命名和移动目录 (30分钟)
|
||
|
||
```bash
|
||
# 1. 重命名 user 为 app
|
||
cd apps/server/src/modules
|
||
mv user app
|
||
|
||
# 2. 保持 merchant 不变
|
||
|
||
# 3. 保持 admin 不变
|
||
|
||
# 4. 保持 website 不变
|
||
|
||
# 5. 重命名 common 为 shared
|
||
mv common shared
|
||
```
|
||
|
||
### 步骤2: 移动 common 中的 controller 到对应模块 (45分钟)
|
||
|
||
#### 2.1 移动应用端相关的 controller
|
||
|
||
```bash
|
||
# 移动用户优惠券
|
||
mv shared/coupon/coupon-user.controller.ts app/coupon/
|
||
mv shared/coupon/coupon-user.service.ts app/coupon/
|
||
|
||
# 移动用户财务
|
||
mv shared/finance/finance-user.controller.ts app/finance/
|
||
mv shared/finance/withdrawal-user.controller.ts app/finance/
|
||
```
|
||
|
||
#### 2.2 移动商家端相关的 controller
|
||
|
||
```bash
|
||
# 移动商家财务
|
||
mv shared/finance/transaction-seller.controller.ts merchant/finance/
|
||
mv shared/finance/withdrawal-merchant.controller.ts merchant/finance/
|
||
mv shared/finance/settlement-merchant.controller.ts merchant/finance/
|
||
```
|
||
|
||
#### 2.3 移动平台管理端相关的 controller
|
||
|
||
```bash
|
||
# 移动管理优惠券
|
||
mv shared/coupon/coupon-admin.controller.ts admin/coupon/
|
||
|
||
# 移动管理财务
|
||
mv shared/finance/account-admin.controller.ts admin/finance/
|
||
mv shared/finance/transaction-admin.controller.ts admin/finance/
|
||
mv shared/finance/withdrawal-admin.controller.ts admin/finance/
|
||
mv shared/finance/settlement-admin.controller.ts admin/finance/
|
||
mv shared/finance/reconciliation-admin.controller.ts admin/finance/
|
||
mv shared/finance/report-admin.controller.ts admin/finance/
|
||
```
|
||
|
||
### 步骤3: 修改所有 Controller 的路由前缀 (60分钟)
|
||
|
||
使用 VS Code 全局查找替换功能 (`Ctrl+Shift+H`):
|
||
|
||
#### 3.1 应用端路由
|
||
|
||
在 `apps/server/src/modules/app` 目录下:
|
||
|
||
```
|
||
查找: @Controller\('user/auth
|
||
替换: @Controller('api/app/auth
|
||
|
||
查找: @Controller\('user/profile
|
||
替换: @Controller('api/app/profile
|
||
|
||
查找: @Controller\('user/orders
|
||
替换: @Controller('api/app/orders
|
||
|
||
查找: @Controller\('user/reviews
|
||
替换: @Controller('api/app/reviews
|
||
|
||
查找: @Controller\('user/coupons
|
||
替换: @Controller('api/app/coupons
|
||
|
||
查找: @Controller\('user/guests
|
||
替换: @Controller('api/app/guests
|
||
|
||
查找: @Controller\('user/activity
|
||
替换: @Controller('api/app/activity
|
||
|
||
查找: @Controller\('user/finance
|
||
替换: @Controller('api/app/finance
|
||
|
||
查找: @Controller\('user
|
||
替换: @Controller('api/app
|
||
```
|
||
|
||
#### 3.2 商家端路由
|
||
|
||
在 `apps/server/src/modules/merchant` 目录下:
|
||
|
||
```
|
||
查找: @Controller\('merchant/auth
|
||
替换: @Controller('api/merchant/auth
|
||
|
||
查找: @Controller\('merchant/profile
|
||
替换: @Controller('api/merchant/profile
|
||
|
||
查找: @Controller\('merchant/rooms
|
||
替换: @Controller('api/merchant/rooms
|
||
|
||
查找: @Controller\('merchant/room-calendar
|
||
替换: @Controller('api/merchant/room-calendar
|
||
|
||
查找: @Controller\('merchant/orders
|
||
替换: @Controller('api/merchant/orders
|
||
|
||
查找: @Controller\('merchant/reviews
|
||
替换: @Controller('api/merchant/reviews
|
||
|
||
查找: @Controller\('merchant/statistics
|
||
替换: @Controller('api/merchant/statistics
|
||
|
||
查找: @Controller\('merchant/finance
|
||
替换: @Controller('api/merchant/finance
|
||
|
||
# 处理旧的 seller 前缀
|
||
查找: @Controller\('seller/
|
||
替换: @Controller('api/merchant/
|
||
```
|
||
|
||
#### 3.3 平台管理端路由
|
||
|
||
在 `apps/server/src/modules/admin` 目录下:
|
||
|
||
```
|
||
查找: @Controller\('admin/
|
||
替换: @Controller('api/admin/
|
||
```
|
||
|
||
#### 3.4 官网路由
|
||
|
||
在 `apps/server/src/modules/website` 目录下:
|
||
|
||
```
|
||
查找: @Controller\('website/
|
||
替换: @Controller('api/website/
|
||
|
||
查找: @Controller\('public/
|
||
替换: @Controller('api/website/
|
||
```
|
||
|
||
### 步骤4: 更新模块导入和注册 (45分钟)
|
||
|
||
#### 4.1 更新各模块的 module.ts 文件
|
||
|
||
需要修改的文件:
|
||
- `app/app.module.ts` (重命名自 user.module.ts)
|
||
- `merchant/merchant.module.ts`
|
||
- `admin/admin.module.ts`
|
||
- `website/website.module.ts`
|
||
|
||
#### 4.2 更新根模块 app.module.ts
|
||
|
||
```typescript
|
||
import { AppModule as AppClientModule } from './modules/app/app.module';
|
||
import { MerchantModule } from './modules/merchant/merchant.module';
|
||
import { AdminModule } from './modules/admin/admin.module';
|
||
import { WebsiteModule } from './modules/website/website.module';
|
||
import { SharedModule } from './modules/shared/shared.module';
|
||
|
||
@Module({
|
||
imports: [
|
||
// ... 其他配置
|
||
AppClientModule,
|
||
MerchantModule,
|
||
AdminModule,
|
||
WebsiteModule,
|
||
SharedModule,
|
||
],
|
||
})
|
||
export class AppModule {}
|
||
```
|
||
|
||
### 步骤5: 更新前端 API 调用路径 (90分钟)
|
||
|
||
#### 5.1 小程序端 (apps/miniapp/src/api/)
|
||
|
||
在整个 `apps/miniapp/src/api` 目录下执行替换:
|
||
|
||
```
|
||
查找: '/user/auth/
|
||
替换: '/api/app/auth/
|
||
|
||
查找: '/user/profile
|
||
替换: '/api/app/profile
|
||
|
||
查找: '/user/orders
|
||
替换: '/api/app/orders
|
||
|
||
查找: '/user/reviews
|
||
替换: '/api/app/reviews
|
||
|
||
查找: '/user/coupons
|
||
替换: '/api/app/coupons
|
||
|
||
查找: '/user/guests
|
||
替换: '/api/app/guests
|
||
|
||
查找: '/user/activity
|
||
替换: '/api/app/activity
|
||
|
||
查找: '/user/finance
|
||
替换: '/api/app/finance
|
||
|
||
查找: '/user
|
||
替换: '/api/app
|
||
|
||
# 公开接口
|
||
查找: '/public/rooms
|
||
替换: '/api/website/rooms
|
||
|
||
查找: '/public/merchants
|
||
替换: '/api/website/merchants
|
||
```
|
||
|
||
#### 5.2 商家管理后台 (apps/merchant-admin/src/api/)
|
||
|
||
在整个 `apps/merchant-admin/src/api` 目录下执行替换:
|
||
|
||
```
|
||
查找: '/merchant/auth/
|
||
替换: '/api/merchant/auth/
|
||
|
||
查找: '/merchant/
|
||
替换: '/api/merchant/
|
||
|
||
查找: '/seller/
|
||
替换: '/api/merchant/
|
||
```
|
||
|
||
#### 5.3 平台管理后台 (apps/platform-admin/src/api/)
|
||
|
||
在整个 `apps/platform-admin/src/api` 目录下执行替换:
|
||
|
||
```
|
||
查找: '/admin/
|
||
替换: '/api/admin/
|
||
```
|
||
|
||
#### 5.4 官网 (apps/official-website/)
|
||
|
||
```
|
||
查找: '/website/
|
||
替换: '/api/website/
|
||
|
||
查找: '/public/
|
||
替换: '/api/website/
|
||
```
|
||
|
||
### 步骤6: 更新 Swagger 配置 (15分钟)
|
||
|
||
修改 `apps/server/src/main.ts`,为不同模块添加 API 标签分组:
|
||
|
||
```typescript
|
||
const config = new DocumentBuilder()
|
||
.setTitle('酒店民宿短租预订平台 API')
|
||
.setDescription('API 文档')
|
||
.setVersion('1.0')
|
||
.addBearerAuth()
|
||
.addTag('应用端', '小程序C端用户使用的接口')
|
||
.addTag('商家端', '小程序商家端和商家管理后台使用的接口')
|
||
.addTag('平台管理端', '平台管理后台使用的接口')
|
||
.addTag('官网', '官方网站使用的接口')
|
||
.build();
|
||
```
|
||
|
||
在各个 Controller 中添加对应的 `@ApiTags` 装饰器。
|
||
|
||
### 步骤7: 测试验证 (60分钟)
|
||
|
||
#### 7.1 后端测试
|
||
|
||
```bash
|
||
# 启动后端服务
|
||
cd apps/server
|
||
pnpm run start:dev
|
||
|
||
# 检查控制台是否有错误
|
||
# 访问 Swagger 文档
|
||
# http://localhost:3000/api/docs
|
||
```
|
||
|
||
#### 7.2 前端测试
|
||
|
||
```bash
|
||
# 启动小程序
|
||
cd apps/miniapp
|
||
pnpm run dev:mp-weixin
|
||
|
||
# 启动商家后台
|
||
cd apps/merchant-admin
|
||
pnpm run dev
|
||
|
||
# 启动平台后台
|
||
cd apps/platform-admin
|
||
pnpm run dev
|
||
|
||
# 启动官网
|
||
cd apps/official-website
|
||
pnpm run dev
|
||
```
|
||
|
||
#### 7.3 功能测试清单
|
||
|
||
- [ ] 应用端
|
||
- [ ] 用户登录/注册
|
||
- [ ] 浏览房源
|
||
- [ ] 创建订单
|
||
- [ ] 查看订单列表
|
||
- [ ] 发表评价
|
||
- [ ] 优惠券领取
|
||
- [ ] 钱包充值/提现
|
||
|
||
- [ ] 商家端
|
||
- [ ] 商家登录
|
||
- [ ] 房源管理(增删改查)
|
||
- [ ] 订单管理
|
||
- [ ] 数据统计
|
||
- [ ] 财务管理
|
||
|
||
- [ ] 平台管理端
|
||
- [ ] 管理员登录
|
||
- [ ] 用户管理
|
||
- [ ] 商家审核
|
||
- [ ] 订单管理
|
||
- [ ] 财务管理
|
||
- [ ] 系统配置
|
||
|
||
- [ ] 官网
|
||
- [ ] 首页展示
|
||
- [ ] 房源浏览
|
||
- [ ] 商家展示
|
||
|
||
## 五、风险控制
|
||
|
||
### 5.1 备份策略
|
||
|
||
在开始重构前,创建 Git 分支:
|
||
|
||
```bash
|
||
git checkout -b refactor/interface-classification
|
||
git add .
|
||
git commit -m "feat: 开始接口分类重构"
|
||
```
|
||
|
||
### 5.2 回滚方案
|
||
|
||
如果出现问题,可以快速回滚:
|
||
|
||
```bash
|
||
git checkout dev
|
||
git branch -D refactor/interface-classification
|
||
```
|
||
|
||
### 5.3 分阶段提交
|
||
|
||
建议按以下阶段提交代码:
|
||
|
||
1. 第一次提交:目录重命名和移动
|
||
2. 第二次提交:Controller 路由前缀修改
|
||
3. 第三次提交:模块导入更新
|
||
4. 第四次提交:前端 API 路径更新
|
||
5. 第五次提交:测试通过后的最终调整
|
||
|
||
## 六、预计时间
|
||
|
||
| 步骤 | 预计时间 | 说明 |
|
||
|------|---------|------|
|
||
| 步骤1: 目录重命名移动 | 30分钟 | 使用命令行批量操作 |
|
||
| 步骤2: 移动 controller | 45分钟 | 手动移动并调整导入 |
|
||
| 步骤3: 修改路由前缀 | 60分钟 | VS Code 批量替换 |
|
||
| 步骤4: 更新模块注册 | 45分钟 | 修改 module.ts 文件 |
|
||
| 步骤5: 更新前端路径 | 90分钟 | 四个前端项目批量替换 |
|
||
| 步骤6: 更新 Swagger | 15分钟 | 添加 API 分组 |
|
||
| 步骤7: 测试验证 | 60分钟 | 全面功能测试 |
|
||
| **总计** | **5.75小时** | 约半个工作日 |
|
||
|
||
## 七、注意事项
|
||
|
||
1. **路径别名**: 确保所有 `@/` 路径别名正确指向新的目录结构
|
||
2. **导入语句**: 检查所有 import 语句是否正确
|
||
3. **DTO 共享**: 如果有共享的 DTO,考虑放在 `shared/dto` 目录
|
||
4. **Guard 和 Decorator**: 确保认证守卫和装饰器路径正确
|
||
5. **测试文件**: 同步更新所有 `.spec.ts` 测试文件
|
||
6. **环境变量**: 检查是否有硬编码的路径需要更新
|
||
7. **文档更新**: 更新 CLAUDE.md 和其他文档中的路径说明
|
||
|
||
## 八、后续优化建议
|
||
|
||
1. **API 版本控制**: 考虑添加 `/api/v1/` 版本前缀
|
||
2. **接口文档**: 为每个模块生成独立的 Swagger 文档
|
||
3. **权限控制**: 基于路由前缀实现更细粒度的权限控制
|
||
4. **监控日志**: 按模块分类记录 API 调用日志
|
||
5. **性能优化**: 为不同端的接口设置不同的缓存策略
|