## 要求
- Go 1.6 及以上版本
> 很快會需要 Go 1.8 版本.
## 安裝
要安裝 Gin 軟件包,需要先安裝 Go 并設置 Go 工作區。
1.下載并安裝 gin:
```sh
$ go get -u github.com/gin-gonic/gin
```
2.將 gin 引入到代碼中:
```go
import "github.com/gin-gonic/gin"
```
3.(可選)如果使用諸如 `http.StatusOK` 之類的常量,則需要引入 `net/http` 包:
```go
import "net/http"
```
#### 使用 [Govendor](https://github.com/kardianos/govendor) 工具創建項目
1.`go get` govendor
```sh
$ go get github.com/kardianos/govendor
```
2.創建項目并且 `cd` 到項目目錄中
```sh
$ mkdir -p $GOPATH/src/github.com/myusername/project && cd "$_"
```
3.使用 govendor 初始化項目,并且引入 gin
```sh
$ govendor init
$ govendor fetch github.com/gin-gonic/gin@v1.3
```
4.復制啟動文件模板到項目目錄中
```sh
$ curl https://raw.githubusercontent.com/gin-gonic/examples/master/basic/main.go > main.go
```
5.啟動項目
```sh
$ go run main.go
```
## 開始
> 不確定如何編寫和執行 Go 代碼? [點擊這里](https://golang.org/doc/code.html).
首先,創建一個名為 `example.go` 的文件
```sh
$ touch example.go
```
接下來, 將如下的代碼寫入 `example.go` 中:
```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 上啟動服務
}
```
然后, 執行 `go run example.go` 命令來運行代碼:
```sh
# 運行 example.go 并且在瀏覽器中訪問 0.0.0.0:8080/ping
$ go run example.go
```
- 介紹
- 快速入門
- 基準測試
- 特性
- Jsoniter
- 示例
- AsciiJSON
- HTML 渲染
- HTTP2 server 推送
- JSONP
- Multipart/Urlencoded 綁定
- Multipart/Urlencoded 表單
- PureJSON
- Query 和 post form
- SecureJSON
- XML/JSON/YAML/ProtoBuf 渲染
- 上傳文件
- 單文件
- 多文件
- 不使用默認的中間件
- 從 reader 讀取數據
- 優雅地重啟或停止
- 使用 BasicAuth 中間件
- 使用 HTTP 方法
- 使用中間件
- 只綁定 url 查詢字符串
- 在中間件中使用 Goroutine
- 多模板
- 如何記錄日志
- 定義路由日志的格式
- 將 request body 綁定到不同的結構體中
- 支持 Let's Encrypt
- 映射查詢字符串或表單參數
- 查詢字符串參數
- 模型綁定和驗證
- 綁定 HTML 復選框
- 綁定 Uri
- 綁定查詢字符串或表單數據
- 綁定表單數據至自定義結構體
- 自定義 HTTP 配置
- 自定義中間件
- 自定義驗證器
- 設置和獲取 Cookie
- 路由參數
- 路由組
- 運行多個服務
- 重定向
- 靜態文件服務
- 靜態資源嵌入
- 測試
- 用戶
- FAQ