<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>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                ## 路由分組 路由分組功能允許把相同前綴的路由定義合并分組,這樣可以提高路由匹配的效率,而且為后面的`路由限流` `路由中間件`打下基礎。 例如我們有以下兩個路由: ``` r.GET("/index/login", func(c *gin.Context) {c.JSON(200, "Hello,world!")}) r.GET("/index/reg", func(c *gin.Context) {c.JSON(200, "Hello,world!")}) ``` 我們可以根據`index`進行分組把他們合并到一起去: ``` indexGroup := r.Group("/index") { indexGroup.GET("/login", func(c *gin.Context) {c.JSON(200, "Hello,world!")}) indexGroup.GET("/reg", func(c *gin.Context) {c.JSON(200, "Hello,world!")}) } ``` 此時訪問的路由地址分別是: ``` http://127.0.0.1:3000/index/login http://127.0.0.1:3000/index/reg ``` 路由分組支持嵌套,例如: ``` indexGroup := r.Group("/index") { erGroup := r.Group("/er") { erGroup.GET("/login", func(c *gin.Context) {c.JSON(200, "Hello,world!")}) erGroup.GET("/reg", func(c *gin.Context) {c.JSON(200, "Hello,world!")}) } indexGroup.GET("/login", func(c *gin.Context) {c.JSON(200, "Hello,world!")}) indexGroup.GET("/reg", func(c *gin.Context) {c.JSON(200, "Hello,world!")}) } ``` 此時訪問的路由地址分別是: ``` http://127.0.0.1:3000/index/login http://127.0.0.1:3000/index/reg http://127.0.0.1:3000/index/er/login http://127.0.0.1:3000/index/er/reg ``` 隨著業務的發展,需求的不斷變化,`API` 的迭代是必然的,很可能當前版本正在使用,而我們就得開發甚至上線一個不兼容的新版本,為了讓舊用戶可以正常使用,為了保證開發的順利進行,我們需要控制好 `API` 的版本區分。 這里我們實現的是將版本號直接加入 URL 中: ``` // 所有的 v1 版本的路由都將存放到這里 v1 := r.Group("/v1") // 注冊一個路由 v1.GET("/", func(c *gin.Context) { c.JSON(200, "Hello,world!") }) ``` 那么訪問這個路由的方式是: ``` http://127.0.0.1:3000/v1 ```
                  <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>

                              哎呀哎呀视频在线观看