为各模块添加上下文文档,帮助 AI 助手理解代码结构: - AGENTS.md: 项目根目录上下文 - docs/AGENTS.md: 文档目录说明 - internal/AGENTS.md: 内部包结构概览 - 各子模块 AGENTS.md: 模块特定上下文和约定 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1.2 KiB
1.2 KiB
handler
Purpose
HTTP 请求处理器,包含路由管理和静态文件服务功能。
Key Files
| File | Description |
|---|---|
router.go |
路由器封装:基于 fasthttp/router,支持 GET/POST/PUT/DELETE/HEAD |
static.go |
静态文件处理器:文件路径安全检查、索引文件支持 |
For AI Agents
Working In This Directory
- 使用
fasthttp/router进行路由匹配,基于 radix tree 高效查找 - 路径参数语法:
{name}命名参数,{name?}可选参数,{filepath:*}捕获所有 - 静态文件处理器包含目录遍历安全检查(拒绝 "..")
- 索引文件默认为 index.html、index.htm,可配置
Testing Requirements
- 运行测试:
go test ./internal/handler/... - 测试路由匹配、路径安全检查、索引文件逻辑
Common Patterns
- 使用
github.com/valyala/fasthttp的RequestCtx处理请求 fasthttp.ServeFile()用于静态文件响应- 路由参数通过
ctx.UserValue("name")获取
Dependencies
External
github.com/fasthttp/router- 路由器github.com/valyala/fasthttp- HTTP 框架