先看概念关系:
Axum Rust 类型总关
│
┌─────────────────────┼─────────────────────┐
│ │ │
▼ ▼ ▼
Router Extractor Middleware
关口路线图 验货设备 安检带
│ │ │
│ ┌───────┴────────┐ │
│ │ │ │
▼ ▼ ▼ ▼
Handler FromRequestParts FromRequest Tower Layer
检查窗口 读门牌/头/状态 读请求体 工业标准链路
│
▼
IntoResponse
放行回执
│
▼
HTTP Response再看一辆请求货车的完整流转:
客户端发来 HTTP 请求
│
▼
Tokio + Hyper 接车
│
▼
Tower Middleware 安检带
│
├── Trace
├── CORS
├── Timeout
└── Auth
▼
Router 匹配通关路线
│
▼
Extractors 逐项验货
│
├── Path / Query / Header
├── State / Extension
└── Json / Form / Bytes
▼
Handler 检查窗口执行业务
│
├── 成功 -> IntoResponse 放行
└── 失败 -> Rejection / ApiError 拒签
▼
HTTP 响应返回如果你把这两张图记住,Axum 就不再是一堆零散 API,而是一整套可解释、可扩展、可测试的类型通关系统。