之前只听说过gin的名字,第一次接触使用。
参考了这篇文章:https://www.yoytang.com/go-gin-doc.html
1 gin介绍
直接翻译官方介绍了。https://github.com/gin-gonic/gin
gin是一个go语言编写的web框架,使用了martini-like的API,性能高达httprouter的40倍!
这里的martini-like也是一个陌生词,了解了一下,martini也是一个用于web开发的go包,gin应该是借鉴了martini的API形式。
2 gin上手
- 首先需要安装gin:
go get github.com/gin-gonic/gin
- 然后在自己的main代码中引入gin包:
import "github.com/gin-gonic/gin"
- 在main函数中初始化gin引擎,绑定路径和handle函数,并指定端口开始运行:
func main() {
engine := gin.Default()
engine.Any("/", WebRoot)
engine.Run(":12421")
}
- 定义handle函数,输出Hello World来处理该路径下的http请求:
func WebRoot(context *gin.Context) {
context.String(http.StatusOK, "Hello World")
}
- 上面就完成了一个简单的gin web服务,使用
go run blog.go
来运行。
运行服务端 -
在浏览器输入127.0.0.1:12421来访问刚刚搭建的服务器,看到输出了Hello World。
客户端访问 -
此时观察服务端命令行窗口,发现服务端收到了两次http请求,第一次是我们触发的,返回200成功,第二次是查找该页面的图标,发现没有这个文件,返回了404错误。这应该是chrome自己干的。
服务端日志