page contents

Golang --Gin框架的安装以及使用

一、安装Gin包管理工具以及类库 1、安装govendor(包管理工具): 必须安装git go get github.com/kardianos/govendor 2、安装一些辅助的类库: 由于直接访问golang.org会因为需要梯子而无...

attachments-2021-07-nrYZnuSa60e67432373f1.png

一、安装Gin包管理工具以及类库

1、安装govendor(包管理工具):

必须安装git

go get github.com/kardianos/govendor

2、安装一些辅助的类库:

由于直接访问golang.org会因为需要梯子而无法访问,有的就算有梯子也是无法访问的

在这里Gin官方就很友好了,把镜像放到了Gin的官方Github上

go get -u -v github.com/ramya-rao-a/go-outline

3、接下来安装go-outline 和 goreturns。

git clone https://github.com/golang/tools.git $GOPATH/src/golang.org/x/tools
go get -v github.com/ramya-rao-a/go-outline
go get -v github.com/sqs/goreturns
go get -v github.com/rogpeppe/godef

4、以上安装好Go的最基本配置后,最后一步安装Gin

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

5、在这个情况下,很多同学都会因为被墙了,而导致安装失败

attachments-2021-07-Kx1jwdcT60e6740c704e6.png

不用着急,在这里其实Golang在Github上已经建立了镜像库,这个开源项目goproxy.io已经实现了我们想要的东西,我们只需要配置一下环境变量代理到goproxy.io上就可以正常下载被强的包了

开启 Go module 功能

如果您使用的 Go 版本是 1.13 及以上 (推荐)

go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.io,direct

设置完上面几个环境变量后,您的 go 命令将从公共代理镜像中快速拉取您所需的依赖代码了。私有库的支持请看这里。

如果您使用的 Go 版本是 1.12 及以下

Bash (Linux or macOS)

# 启用 Go Modules 功能
export GO111MODULE=on
# 配置 GOPROXY 环境变量
export GOPROXY=https://goproxy.io

或者,根据文档可以把上面的命令写到.profile或.bash_profile文件中长期生效。

PowerShell (Windows)

# 启用 Go Modules 功能
$env:GO111MODULE="on"
# 配置 GOPROXY 环境变量
$env:GOPROXY="https://goproxy.io"

现在,当你构建或运行你的应用时,Go 将会通过 goproxy.io 获取依赖,具体可访问:https://goproxy.io/zh/ 查看配置

上面配置完后,我们就可以下载被墙的包了

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

6、下载好后测试一下是否能成功,创建main.go写入

package main
import (
"github.com/gin-gonic/gin"
"net/http"
)
 
func main() {
r := gin.Default()
r.GET("/", func(c *gin.Context) {
c.String(http.StatusOK, "搭建完成")
})
r.Run(":8888")  // 端口号8888
}

7、运行main.go

go run main.go

attachments-2021-07-bpVGR0Ai60e673aa5c948.png

8、访问http://127.0.0.1:8888/

attachments-2021-07-8YofQ6Ah60e6739710bcd.png

二、热加载调试 Hot Reload

Python 的 Flask框架,有 debug 模式,启动时传入 debug=True 就可以热加载(Hot Reload, Live Reload)了。即更改源码,保存后,自动触发更新,浏览器上刷新即可。免去了杀进程、重新启动之苦。

1、Gin 原生不支持,但有很多额外的库可以支持。例如

github.com/codegangsta/gin
github.com/pilu/fresh

2、这次,我们采用fresh

go get -v -u github.com/pilu/fresh

3、安装好后,把go run main.go执行换成fresh执行,每次更改源文件,代码将自动重新编译

  1. 但在这块有的同学可能会碰到下面的问题

attachments-2021-07-GWeLIBwe60e6737739860.png

  1. 这个是因为项目根目录下面没有go.mod文件,创建这个文件,这个文件里面用来管理module的。
  2. 我们在根目录下面执行
go mod code  // code是项目名
  1. 这个时候会默认生成一个.mod的文件,接下来我们重新执行fresh
  2. 执行成功后,编辑文件后,会自动检测并且编译,这样就可以免去了每次修改后都要重启的痛苦了

attachments-2021-07-Q0D3QzSq60e6735f2ce03.png

这样Gin的安装以及简单使用就结束了,Golang学习文章会持续更新,谢谢

更多相关技术内容咨询欢迎前往并持续关注六星社区了解详情。

程序员编程交流QQ群:805358732

如果你想用Python开辟副业赚钱,但不熟悉爬虫与反爬虫技术,没有接单途径,也缺乏兼职经验
关注下方微信公众号:Python编程学习圈,获取价值999元全套Python入门到进阶的学习资料以及教程,还有Python技术交流群一起交流学习哦。

attachments-2022-06-wuwgwbaC62ad35c9dec3d.jpeg

  • 发表于 2021-07-08 11:43
  • 阅读 ( 730 )
  • 分类:Golang

0 条评论

请先 登录 后评论
轩辕小不懂
轩辕小不懂

2403 篇文章

作家榜 »

  1. 轩辕小不懂 2403 文章
  2. 小柒 1324 文章
  3. Pack 1135 文章
  4. Nen 576 文章
  5. 王昭君 209 文章
  6. 文双 71 文章
  7. 小威 64 文章
  8. Cara 36 文章