## 一、 为什么选择用Gin框架
- #### 最初是在Gin框架和Beego框架这两个框架上做个选择,两者的社区用户量都很大,都很活跃。Beego大而全,几乎所有的模块都模块化,封装好,开箱即用,而Gin的有点就是简单,轻量级,性能好,灵活性高,想用什么就在添加什么。有个比较好的对比图我放个链接可以去看一下, [Go Web框架比较](http://blog.yixao.net/tech/20790.html)。
- #### 根据我个人的项目需求,因为是做的前后端分离,并且也希望灵活性高一点,我选择了Gin框架作为我的主框架。
## 二、快速开始
#### 1. 创建一个新工程,先创建一个目录,在目录下使用Mod依赖管理工具(golang版本必须要1.11以上才能使用mod)
###### 1.1. 用一下命令设置一下Golang的环境,之后可以使用```go env```查看
```golang
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct
```
###### 2.2. 生成一个go.mod文件
> go mod init
#### 2. 首先安装Gin框架的库
> go get -u github.com/gin-gonic/gin
#### 会看到go.mod文件中看到依赖
```golang
github.com/gin-gonic/gin v1.6.3
```
#### 3. 在目录下创建一个helloworld.go文件
**helloworld.go**
```golang
package main
import (
"github.com/gin-gonic/gin"
)
func main() {
// 创建一个默认的路由引擎
r := gin.Default()
// GET:请求方式;/hello:请求的路径
// 当客户端以GET方法请求/hello路径时,会执行后面的匿名函数
r.GET("/hello", func(c *gin.Context) {
// c.JSON:返回JSON格式的数据
c.JSON(200, gin.H{
"message": "Hello world!",
})
})
// 启动HTTP服务,默认在0.0.0.0:8080启动服务
r.Run()
}
```
#### 4. 运行以上代码,用浏览器打开```localhost:8080/hello```就能看到一串```Hello world!```字符串。
> go run helloworld.go
gin里面怎么输出一小段 html 比如
```C
<form method="post" ><input name="username" ><button>Send</button></form>
```
不是输出模板
#1