[TOC]
### 初始化项目
```
# 创建自己的代码目录并进入
mkdir -p ~/work/go/gin-learn
# 进入目录
cd $_
# 创建go.mod
# go mod init <module_name>
go mod init gin-learn
```
### 打开编辑器

选择启用Go集成


由于GO的库大部分都是在github, 国内访问速度较慢,可以设置 GOPROXY 来加速国内访问
我的设置是: `GOPROXY=https://goproxy.cn,direct`
### 下载gin并进行测试
```
go get -u github.com/gin-gonic/gin
```
编写测试代码
1. 在根目录创建文件 `main.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()
}
```
上面的代码的意思是:引入了gin的库,然后 创建了一个 gin的引擎,接着增加了一个 地址为 `{DOMAIN}/ping` 的路由,这个路由在被请求后返回一个 http 状态为 200的 json信息
最后是启动服务, 默认监听的端口是 8080 , 可以通过写 `r.Run(":8080")` 这样的方式来指定具体的监听端口
2. 启动服务
命令行输入`go run main.go `即可启动服务

或者直接使用编辑器启动


3. 测试请求
```
# 终端输入
curl -X GET "http://localhost:8080"
# 浏览器访问
```
