Golang http源码逻辑
2020-09-18 00:43:39 18 举报
golang http源码逻辑
作者其他创作
大纲/内容
c.readRequest(ctx)
mux.Handle
context.Background()
http.ListenAndServe
路由注册、路由匹配的核心逻辑
mux.handler
l.Accept()
DefaultServeMux
make(map[string]muxEntry)
muxEntry{}
serverHandler
调用handler函数,执行用户的业务逻辑
ServeHTTP
srv.Serve
c.serve(connCtx)
handler.ServeHTTP
server.ListenAndServe()
根据请求找到路由中匹配的handler
mux.m[path]
mux.m[pattern] = e
srv.newConn(rw)
DefaultServeMux.HandleFunc
http.HandleFunc
路由匹配,处理请求
Server{}
默认的路由实例
appendSorted
mux.match
net.Listen
ServeMux
mux.Handler
路由注册
0 条评论
下一页