我是一名五六年经验的前端程序员,现在准备学习一下 Golang 的后端框架 gin。

以下是我的学习实战经验,记录下来,供大家参考。

https://github.com/gin-gonic/gin

1. 先安装 Golang

我使用苹果系统,很简单,用以下命令:

brew install golang

其他系统的朋友在这里下载安装包即可:https://go.dev/dl/

要验证是否安装成功,只需要进入命令行如下:

$ go version
go version go1.19.1 darwin/amd64

能得到版本号即可。

2. 初始化项目

你找一个空目录,或新增一个。

mkdir go-rest-api

用命令行进入它。

cd go-rest-api

初始化:

go mod init go-rest-api

go-rest-api 就是项目名称,一般我们自己的项目,类似这样命令就可以了,如果是开源库,你可以在前面加上域名。

比如: github.com/gin-gonic/gin

或者用你公司的域名,加上项目名,比如 example.com/go-rest-api

这条初始化命令就生成了一个文件,如下:

go.mod

module go-rest-api

go 1.19

模块 module 名,就是我们的项目名 go-rest-api

还有 golang 的版本号 1.19

创建项目入口文件

接下来创建入口文件:main.go

这里我推荐 vscode 或 GoLand 编辑器来编写代码。

package main

import (
	"fmt"
)

func main() {
	fmt.Println("Hello World!")
}

这个很简单,入口的包名叫 main,一般我们不需要去动它。

fmt 是标准库提供的用于输出的。

然后一个函数,输出 Hello World!

3. 运行项目

在命令行运行命令:

go run main.go

终端会输出:

Hello World!


4. 安装 gin 框架

找到 gin 框架的 github 地址:

https://github.com/gin-gonic/gin

golang 安装库或框架很简单,只需要一条命令:

go get -u github.com/gin-gonic/gin

get 表示安装,-u 表示安装最新的包。

不加 -u 也行。

安装完之后,并不会在本地项目下载包的源码,这些源码会被放到本地别的地方去,也会被其他项目共享,而不是每个项目都复制一份包的源码。


装完之后,只是多了一个文件 go.mod,放的是项目依赖的包的信息,我们不会去手动更新其内容的,都是会通过工具(比如 go get)来维护它。


5. 跑一下 gin 的 hello world

接下来把 main.go 改下:

package main

import (
	"net/http"

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

func main() {
	r := gin.New()
	r.GET("/", func(c *gin.Context) {
		c.JSON(http.StatusOK, gin.H{
			"message": "Hello World!",
		})
	})
	r.Run()
}

注意:你其实只需要改 main 函数里的内容就可以,import 里的内容,编辑器在你保存文件后会自动帮你完成。

6. 运行 gin 项目

先来运行看下效果:

go run main.go



7. 访问

我用 postman 工具访问:


项目运行在 8080 端口上,访问后返回一个 json。

  1. 分析代码