| 123456789101112131415161718192021222324252627282930313233343536 |
- package framework
- import (
- "log"
- "net/http"
- )
- // 核心框架
- type Core struct {
- router map[string]ControllerHandler
- }
- // 初始化框架核心结构
- func NewCore() *Core {
- return &Core{router: map[string]ControllerHandler{}}
- }
- func (c *Core) Get(url string, handler ControllerHandler) {
- c.router[url] = handler
- }
- // 框架核心结构实现 handler 接口
- func (c *Core) ServeHTTP(response http.ResponseWriter, request *http.Request) {
- log.Println("core.ServeHTTP")
- ctx := NewContext(request,response)
- // 一个简单的路由选择器,这里直接写死为测试路由 foo
- router:= c.router["foo"]
- if router == nil {
- return
- }
- log.Println("core.router")
- router(ctx)
- }
|