人生苦短,我用 Golang--Gin 框架(一)

 學過 java 的應該都很熟悉 spring 框架吧,它爲 java 的網絡編程提供了許多遍歷。那 golang 有沒有方便的網絡框架呢?還真有,今天我們就來一起學習下 gin 框架**”**

其實 golang 自帶的 http 接口也是很好的,但是有時候不夠方便,所以我們還是需要一個好的框架的。作爲初學者,我更建議大家和我一起學習 gin 框架。

首先我們需要下載安裝 gin 的包,下載包的命令爲

go get github.com/gin-gonic/gin

下載完成後,讓我們先寫一個小的例子

import (
  "demo/src/main/routers"
  "github.com/gin-gonic/gin"
  "io"
  "net/http"
  "os"
)
func main() {
  r := gin.Default()
  r.GET("/hello", func(c *gin.Context) {
    c.JSON(http.StatusOK, gin.H{
      "flag": true,
      "msg": "hello gin",
    })
  })
  r.Run(":81")
}

這裏我們用 gin 框架的默認配置創建了一個路由,設置了訪問路徑和執行的函數,並讓服務運行在本機的 81 端口。

通過在瀏覽器訪問 http://127.0.0.1:81/hello,我們可以看到以下結果

圖片

最後,我們來看下 gin 框架的一些簡單配置。上面我們是用 gin.Default() 來創建路由的,下面我們用另一種方式來創建一個路由。

import (
  "demo/src/main/routers"
  "github.com/gin-gonic/gin"
  "io"
  "net/http"
  "os"
)
func main() {
  // 關閉控制檯日誌顏色
  gin.DisableConsoleColor()
  // 配置日誌輸出目錄
  f, _ := os.Create("go.log")
  gin.DefaultWriter = io.MultiWriter(f, os.Stdout)
  r := gin.New()
  // 使用log中間件
  r.Use(gin.Logger())
  r.GET("/hello", func(c *gin.Context) {
    c.JSON(http.StatusOK, gin.H{
      "flag": true,
      "msg": "hello gin",
    })
  })
  r.Run(":81")
}

這次我們用 gin.New() 來創建路由,並配置了日誌輸出目錄。

本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://mp.weixin.qq.com/s/UDcGYg4-QkuIBBzISLSMYQ