使用 golang 从0到1手写 web 框架,基于 golang 的官方库 http
part1: http库实现与用法
part2: 路由树设计
part3: context输入输出
part4: middleware设计
part5: 拓展功能
part6: gin框架源码解读
环境:1.18
新建目录,初始化工作区;如新建目录然后 go mod init web
安装
go get -u github.com/longrl/thin-web
package main
import web "github.com/longrl/thin-web"
func main() {
server := web.NewHttpServer()
server.Use(web.Recovery(), web.AccessLog())
server.Get("/hello", func(ctx *web.Context) {
ctx.RespJSONOK("hello world")
})
server.Start(":8080")
}