自己根据go-zero单体框架实现的一个精简版框架https://github.com/wanmei002/go-zero-learn, 新手直接看go-zero 框架可能会绕,看这个好理解
大纲
- 路由和对应处理方法的存储
- 找到路由匹配的方法(gin go-zero 都是生成字典树)
- 找到实现 http.Handler 接口的结构体
- 上面结构体实现
ServeHTTP这个方法- 这个方法里面有路由的匹配,匹配到路由执行对应的方法
- 中间件的添加
- 中间件的运行
这一节我们先看看 go-zero 路由是怎么存储的
- 入口方法里有一个
handler.RegisterHandlers(server, ctx),
这里面有对应的请求方法 路由 处理路由的方法的存储。
存储的结构体为:
type Route struct {
Method string // 请求方法 GET POST 等
Path string

最低0.47元/天 解锁文章
775





