<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                [TOC] ## 簡單例子 > 提示:實際項目開發中不要把路由定義和控制器函數都寫在一個go文件,不方便維護,可以參考第一章的項目結構,規劃自己的業務模塊 ~~~ package main import "github.com/gin-gonic/gin" func main() { // 初始化一個http服務對象 r := gin.Default() // 路由定義 [GET請求], url路徑為:/user/sayHello, 綁定sayHello控制器函數 r.GET("/user/sayHello", sayHello) // 路由定義 [GET請求,綁定參數方式], url路徑為:/user/sayHello2, 綁定sayHello2控制器函數 r.GET("/user/sayHello2/:username", sayHello2) // 路由定義 [POST請求], url路徑為:/user/login, 綁定doLogin控制器函數 r.POST("/user/login", doLogin) r.Run() // 監聽并在 0.0.0.0:8080 上啟動服務 } // 控制器函數 func sayHello(c *gin.Context) { // 獲取post請求參數 username := c.Query("username") // 通過請求上下文對象Context, 直接往客戶端返回一個字符串 c.String(200, "hello %s", username) } // 控制器函數 func sayHello2(c *gin.Context) { // 獲取綁定參數 username := c.Param("username") // 通過請求上下文對象Context, 直接往客戶端返回一個字符串 c.String(200, "hello %s", username) } // 控制器函數 func doLogin(c *gin.Context) { // 獲取post請求參數 username := c.PostForm("username") password := c.PostForm("password") c.JSON(200, gin.H{ "username":username, "password":password, }) } ~~~ ## 分組路由 > 在做api開發的時候,如果要支持多個api版本,我們可以通過分組路由來實現api版本處理 ~~~ func main() { router := gin.Default() // 創建v1組 v1 := router.Group("/v1") { // 在v1這個分組下,注冊路由 v1.POST("/login", loginEndpoint) v1.POST("/submit", submitEndpoint) } // 創建v2組 v2 := router.Group("/v2") { // 在v2這個分組下,注冊路由 v2.POST("/login", loginEndpoint) v2.POST("/submit", submitEndpoint) } router.Run(":8080") } ~~~ > 上面例子將會注冊以下路徑 > /v1/login > /v1/submit > /v2/login > /v2/submit
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看