go-GIN快速入门

简介: go-GIN快速入门

一、go mod安装



1、为什么要安装go mod


在项目中需要某个依赖包,必须使用go get安装,否则运行go run main.go会报错。这种方式在依赖包较多时不便于管理,于是在go1.11版本就有了go modgo mod是go的包管理工具,使用go mod后,无需把所有项目放在$GOPATH/src,项目可以放在任何位置


go get有时下载某个插件的时候需要FQ,如果你的电脑没有FQ的话是安装不上去的,比如:go get -u github.com/gin-gonic/gin,,因为它有连接到google的文件,所以我们需要配置go mod,当然你也可以FQ。


2、 go mod安装


第一步:在环境变量中配置环境变量


export GO111MODU=on
export GOPROXY=https://goproxy.io

配置好以后让配置生效


source ~/.bash_profile


第二步:在idea中配置启用go module


1187916-20220221110111168-144349265.png


添加环境变量


1187916-20220221110253918-1328371995.png

1187916-20220221111524708-554481650.png

配置好了。


3. 使用go mod创建项目


go mod init 项目名

在src目录下,我们创建一个叫api的项目


mkdir api

在根目录下执行


go mod init api

会看到如下输出


go: creating new go.mod: module api
go: to add module requirements and sums:
  go mod tidy

表示module初始化成功了,在目录下生成go.mod文件。


包含go.mod文件的目录称为模块根,go.mod 文件的出现定义了它所在的目录为一个模块,该模块下的模块导入其他模块都以它为参照,如import api/xxx


一、gin安装


第一步:下载gin


下载之前要配置好环境变量和go mod,不然可能下载不下来


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

image.png


第二步:简单的http请求


1.新建一个hello项目


2.在项目下添加hello.go文件,文件内容如下:


package main
import "github.com/gin-gonic/gin"
func main() {
    // gin.Default()是实例化一个默认的gin示例,便于我们操
    r := gin.Default()
    // 注册一个GET访问处理函数,路径是根路径
    r.GET("/", func(c *gin.Context) {
        c.JSON(200, gin.H{
            "name":"zhangsan",
            "age":"24",
        })
    })
    r.Run(":8080")
}

文件编译报错, 执行go mod tidy下载缺失的插件即可。


3.然后我们运行它,打开浏览器,输入http://localhost:8080/就可以看到如下内容:


{
    "age": "24",
    "name": "zhangsan"
}


至此,gin已经能够正常的跑起来了。








相关文章
解决GO安装gin框架(go get -u github.com/gin-gonic/gin)超时问题
解决GO安装gin框架(go get -u github.com/gin-gonic/gin)超时问题
解决GO安装gin框架(go get -u github.com/gin-gonic/gin)超时问题
|
开发框架 JSON 前端开发
Go主流框架对比:Gin Echo Beego Iris
由于go的标准库非常丰富,尤其是net/http包的存在,基本上把别的语言需要通过框架搞的事情都做了,不用框架光用标准库也能顺畅的开发需求了。
2366 0
|
6月前
|
Go 区块链 云计算
Go入门简介
Go入门简介
47 6
|
7月前
|
JSON 中间件 Go
Go Gin 框架系列 - 入门篇
本文将会对 Go Gin 框架进行简单介绍,括它的一些优势和特点,然后通过一个入门示例,演示了如何安装和使用 Gin 启动一个 WEB 服务器并注册路由。
142 1
Go Gin 框架系列 - 入门篇
|
9月前
|
存储 缓存 算法
Go源码解析之mgc.go
Go源码解析之mgc.go
85 0
|
11月前
|
编译器 Go
go01 简介和准备
go01 简介和准备
79 0
|
XML JSON Java
|
XML JSON Java
|
存储 中间件 Go
Go --- go-elasticsearch介绍及简单使用
Go --- go-elasticsearch介绍及简单使用
Go --- go-elasticsearch介绍及简单使用