中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Go Web框架gin的安裝和使用方法

發布時間:2021-09-06 16:54:08 來源:億速云 閱讀:135 作者:chen 欄目:編程語言

這篇文章主要介紹“Go Web框架gin的安裝和使用方法”,在日常操作中,相信很多人在Go Web框架gin的安裝和使用方法問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Go Web框架gin的安裝和使用方法”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

安裝gin

直接使用 go get github.com/gin-gonic/gin 即可。

官方README中提供了非常多的例子。例如最簡單的實例代碼:

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() // listen and serve on 0.0.0.0:8080
}

路由

router := gin.Default() // 默認是帶有Logger和Recovery中間件的
router := gin.New() // 不帶中間件的路由
router.Use(gin.Logger()) // 可以使用這種方式來指明中間件
router.GET("/test", MyMiddleware(), testEndpoint) // 也可以用這種方式給指定路由添加中間件
router.GET("/someGet", getting) // 支持所有Restful的操作
// 帶參數的路由
router.GET("/user/:name", func(c *gin.Context) {
 name := c.Param("name")
})

// 參數可選/通配符功能
router.GET("/user/:name/*action", ...)

// 路由分組
v1 := router.Group("/v1")
{
  v1.POST("/login", loginEndpoint)
  v1.POST("/submit", submitEndpoint)
}
v1.Use(AuthRequired()) {} // 路由分組單獨指定中間件

請求與響應

請求

// 獲取路由參數,假設有路由為"/user/:name"
c.Params.ByName("name")

// 獲取query參數
c.Query("name")
c.DefaultQuery("name", "Guest")

// 獲取表單參數
c.PostForm("name")
c.DefaultPostForm("name")

參數綁定

請求驗證

響應

// 返回簡單的字符串
c.String(200, "pong")

// 返回JSON數據
c.JSON(200, gin.H{
  "message": "pong",
})

// 重定向
c.Redirect(http.StatusMovedPermanently, "https://google.com")

中間件

自定義中間件

BasicAuth中間件

異步協程

gin可以借助協程來實現異步任務,但是這時候得手動copy上下文,并且只能是可讀取的。

router.GET("/async", func(c *gin.Context) {
  cCp := c.Copy()
  go func() {
    time.Sleep(5 * time.Second)
    log.Println("Done! in path" + cCp.Request.URL.Path)
  }()
})

到此,關于“Go Web框架gin的安裝和使用方法”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

乌审旗| 安平县| 平陆县| 凤庆县| 永清县| 家居| 千阳县| 清水县| 会宁县| 四平市| 乌苏市| 天门市| 彰化县| 蓝山县| 米泉市| 乐清市| 错那县| 马边| 邳州市| 宜宾市| 布尔津县| 天长市| 鄢陵县| 含山县| 平邑县| 鹤岗市| 盘锦市| 亳州市| 霍林郭勒市| 松江区| 同江市| 古交市| 彩票| 大英县| 衡东县| 木兰县| 莫力| 平邑县| 碌曲县| 新田县| 和政县|