Bagaimana untuk Menstrukturkan Laluan Gin Anda untuk Kod Bersih?

Linda Hamilton
Lepaskan: 2024-11-02 21:09:02
asal
642 orang telah melayarinya

How to Structure Your Gin Routes for Clean Code?

Mengumpulkan Laluan dalam Gin untuk Kod Bersih

Mengatur laluan ke dalam fail berasingan ialah amalan biasa untuk mengurangkan kekusutan dan kerumitan fail penghala utama. Dalam Gin, ini boleh dicapai dengan memanfaatkan kaedah Kumpulan.

Satu pendekatan ialah menyimpan pembolehubah penghala sebagai ahli struct atau pembolehubah global, membenarkan fail individu menambah pengendali padanya. Berikut ialah contoh:

routes.go

<code class="go">package app

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

type routes struct {
    router *gin.Engine
}

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

    v1 := r.router.Group("/v1")

    r.addPing(v1)
    r.addUsers(v1)

    return r
}

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

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

func pongFunction(c *gin.Context) {
    c.JSON(200, gin.H{
        "message": "pong",
    })
}</code>
Salin selepas log masuk

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

func getUsersFunction(c *gin.Context) {
    c.JSON(200, gin.H{
        "users": "...",
    })
}</code>
Salin selepas log masuk

Dengan menggunakan pendekatan ini , setiap fail fungsi boleh menentukan pengendali dalam kumpulan khususnya, memastikan pangkalan kod utama teratur dan modular.

Atas ialah kandungan terperinci Bagaimana untuk Menstrukturkan Laluan Gin Anda untuk Kod Bersih?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!