Gin框架快速入门| 青训营

240 阅读2分钟

Gin是一个用 Go (Golang) 编写的 HTTP web 框架。
文档网址:gin-gonic.com/zh-cn/

安装Goin

先更换国内源

由于历史原因,go的软件包会通过GOPATH和module两种方式去管理,而不同管理方式下go get所下载的源也不同,因此go的换源会比其他语言更加麻烦,要用两步来完成:

go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn

第一个命令,是将GO111MODULE从auto模式修改为on模式。如前面提到的,go有两种包管理方式

  • GOPATH方式:早期方式,会将下载的包放入GOPATH/src目录下,然后只有GOPATH/src中的包是能被程序导入的
  • module方式:更现代的方式,通过在项目目录中生成go.mod文件来管理需要的包,此时go还可以导入网络上的包、本目录的包,然后缺少的包会被缓存到GOPATH/pkg目录下

GOPROXY只能修改module方式的下载源。而go get是通过哪种方式下载包,go怎样管理包依赖,取决于GO111MODULE的设置:

  • auto模式下,有go.mod文件的目录下执行go get会走module方式,而没有的目录会走GOPATH方式。
  • on模式下,全部都走module方式

设置好后,测试一下

输入以下命令

go env

要等一会,会输出一长串环境变量,其中有

GOPROXY="https://goproxy.cn"

可以看到GOPROXY已经被设置为goproxy.cn

在设置GOPROXY之后,我们可以通过执行以下命令来测试是否生效:

go get -v github.com/golang/example/hello

该命令会下载Golang官方提供的Hello World示例代码,并输出相关的信息。如果下载成功,则说明镜像源已经生效。

image.png

介绍一下其它常用的国内镜像源网址

  • Go 中国(www.gochina.io/ ):Go 中国是由 Go 语言中文网站推出的镜像源,提供了丰富的 Golang 包下载,并且支持 CDN 加速和多节点部署,可以有效提高下载速度和稳定性。

  • 阿里云镜像(mirrors.aliyun.com/goproxy/ ):阿里云镜像是一个由阿里云推出的镜像源,提供了大量的Golang 包下载,并且速度快、稳定性高。

安装gin

  1. 下载并安装 gin:
go get -u github.com/gin-gonic/gin
  1. 将 gin 引入到代码中:
import "github.com/gin-gonic/gin"
  1. 可选)如果使用诸如 http.StatusOK 之类的常量,则需要引入 net/http 包:
import "net/http"

运行第一个Gin代码

创建一个go文件,复制以下代码

package main  
  
import "github.com/gin-gonic/gin"  
  
func main() {  
    r := gin.Default()  
    r.GET("/ping", func(c *gin.Context) {  
        c.JSON(200, gin.H{  
            "message": "pong",  
        })  
    })  
    r.Run() // 监听并在 0.0.0.0:8080 上启动服务  
}

运行后访问127.0.0.1:8080/ping,浏览器会返回{"message":"pong"}

至此完成Gin的快速入门