# 《WaLiAPI - 本地 LLM API 网关》第4-3节:Wiki 页面管理与命令层
作者:小傅哥
博客:https://bugstack.cn (opens new window)
沉淀、分享、成长,让自己和他人都能有所收获!😄
摄入管道能把文档变成结构化页面,但要让前端真正用起来,还需要一套页面管理与命令层:HTTP 路由 + handlers 业务处理 + Tauri 命令。这一节把 Wiki 的读写能力完整暴露出来,形成"三种入口共享一份业务逻辑"的架构。
# 一、本章诉求
- 实现 handlers.rs:项目 CRUD、源管理、页面 CRUD、搜索、问答、图谱、会话、队列
- 实现 routes.rs:Wiki HTTP 路由表(20+ 路由)
- 实现 update_page_inner / ask_inner:可复用的核心业务逻辑
- 实现 commands/wiki.rs:Tauri 命令层(前端 invoke 调用)
# 二、三层入口架构
Wiki 的业务逻辑被设计为三种入口共享一份实现:
┌──────────────────────────────────────────────────┐
│ 三种调用入口 │
│ │
│ HTTP 路由 Tauri 命令 MCP 工具 │
│ (routes.rs) (commands/wiki.rs) (mcp/handlers)│
│ │ │ │ │
│ ▼ ▼ ▼ │
│ handlers.rs ──▶ update_page_inner / ask_inner │
│ (共享业务逻辑层) │
│ │ │ │ │
│ ▼ ▼ ▼ │
│ repository.rs ──▶ project.rs ──▶ ingest.rs │
│ (存储 + 文件 + 摄入) │
└──────────────────────────────────────────────────┘
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
HTTP handler、Tauri 命令、MCP 工具(4-4 节)都调用同一套 update_page_inner / ask_inner 核心逻辑,避免重复实现。

