Gin 快速入门

Gin 介绍

Gin 是 Go 语言写的一个 web 框架,它具有运行速度快,分组的路由器,良好的崩溃捕获和错误处理,非常好的支持中间件和 json。一款值得好好学习并应用的 Web 框架。

官网 :  https://gin-gonic.com/zh-cn/docs/

安装 Gin

// 初始化项目 mod
go mod init gotest
// 初始化依赖
go mod tidy
// 安装 Gin
go get -u github.com/gin-gonic/gin

快速开启 Web 服务

在 main.go 文件编写如下代码 :

package main
import "github.com/gin-gonic/gin"
func main() {
	// 初始化 Gin 引擎
	r := gin.Default()
	// 定义路由
	r.GET("/", func(c *gin.Context) {
		c.JSON(200, gin.H{
			"message": "hello",
		})
	})
	// 启动 web 服务
	r.Run(":80")
}

运行 main.go

go run ./main.go

打开浏览器访问 localhost 即可看到 web 访问已经启动。

gin 运行模式

gin 内置提供了三种运行模式 :

const (
	// DebugMode indicates gin mode is debug.
	DebugMode = "debug"
	// ReleaseMode indicates gin mode is release.
	ReleaseMode = "release"
	// TestMode indicates gin mode is test.
	TestMode = "test"
)

我们可以在不同阶段设置不同的模式,如开发时使用 DebugMode、上线后使用 ReleaseMode。

开发时我们建议使用 r := gin.Default() 初始化 gin,会在终端内输出详细的运行信息。当项目准备上线时我们推荐使用 release 模式 :

package main

import "github.com/gin-gonic/gin"

func main() {
	// 初始化 Gin 引擎
	gin.SetMode(gin.ReleaseMode)
	r := gin.New()
	// 定义路由
	r.GET("/", func(c *gin.Context) {
		c.JSON(200, gin.H{
			"message": "hello",
		})
	})
	// 启动 web 服务
	r.Run(":80")
}