Gin是目前最流行,性能最好的的GOWEB框架,是学习GOLANG必备的知识。本人最近也在学Gin,在b站搜了很多教程,发现有的教程不够详细,有的教程工具包安装有问题,而官方文档又太简短,于是我就想,能不能通过问ChatGPT来弥补这点?毕竟我们是学技术的,与时俱进才是常态,学习方法也是一样。所以,一套基于官方文档和ChatGPT的Gin教程就诞生了!废话不多说,让我们开启Gin学习之旅吧!
官方项目地址:Gin框架
官方文档地址:Gin官方中文文档
本教程推荐使用方法:创建一个文件夹,用于存放本教程所有示例,本教程每节的内容都放在子文件夹下。
首先,创建一个文件夹,然后创建mod。然后打开命令行,执行如下指令:
go get -u github.com/gin-gonic/gin
创建01example文件夹,创建main.go,写入如下代码:
package main
import "github.com/gin-gonic/gin" // 导入 Gin 包
func main() {
// 创建一个默认的 Gin 引擎
r := gin.Default()
// 定义一个 GET 路由,当访问 "/ping" 时触发
r.GET("/ping", func(c *gin.Context) {
// 返回 JSON 响应,状态码为 200
c.JSON(200, gin.H{
"message": "pong", // 响应内容
})
})
// 启动服务,默认监听 8080 端口
r.Run()
}
解析:
gin.Default()
创建一个默认的 Gin 引擎实例。默认引擎包括了一些基础中间件,例如:
Logger:记录请求日志。
Recovery:处理运行时错误,避免服务崩溃。
func(c *gin.Context)
是处理函数,它接受一个 Context 参数,Context 是 Gin 中用于处理请求的上下文对象,包含了请求和响应的相关信息。
c.JSON(...)
返回一个 JSON 响应,其中 200 是 HTTP 状态码,gin.H 是一个便捷的字典类型,用于构造 JSON 响应。
r.run()
用于监听端口,默认8080,指定端口可以字符串形式传入,比如r.run(":8000")
。
保存,运行代码,然后打开浏览器,输入 http://localhost:8080/ping,效果如下: