首頁 >後端開發 >Golang >如何在 Gin 中組織路由:分組路由定義指南?

如何在 Gin 中組織路由:分組路由定義指南?

Linda Hamilton
Linda Hamilton原創
2024-11-03 05:26:30912瀏覽

How to Organize Routes in Gin: A Guide to Grouped Route Definition?

如何在 Gin 中組織路由

為了避免主文件與路由定義混亂,您可以將路由分組到單獨的文件中。這種方法可以實現更好的程式碼組織和可維護性。

要建立巢狀路由分組,您可以將路由器變數儲存在結構體或全域變數中。然後,各個檔案可以將處理程序新增至此共用路由器實例。

範例實作

routes.go

<code class="go">package app

import (
    "github.com/gin-gonic/gin"
)

type routes struct {
    router *gin.Engine
}

func NewRoutes() routes {
    return routes{
        router: gin.Default(),
    }
}

func (r routes) addPing(rg *gin.RouterGroup) { }
func (r routes) addUsers(rg *gin.RouterGroup) { }

func (r routes) Run(addr ...string) error { return r.router.Run() }</code>

ping.go

<code class="go">package app

import "github.com/gin-gonic/gin"

func (r routes) addPing(rg *gin.RouterGroup) {
    ping := rg.Group("/ping")
    ping.GET("/", pongFunction)
}</code>

users.go

<code class="go">package app

import "github.com/gin-gonic/gin"

func (r routes) addUsers(rg *gin.RouterGroup) {
    users := rg.Group("/users")
    users.GET("/", getUsersFunction)
}</code>

以上是如何在 Gin 中組織路由:分組路由定義指南?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn