رفتن به محتوا

مسیریابی

Gin یک سیستم مسیریابی قدرتمند مبتنی بر httprouter برای تطبیق URL با عملکرد بالا ارائه می‌دهد. در پشت صحنه، httprouter از درخت Radix (که به آن trie فشرده نیز گفته می‌شود) برای ذخیره و جستجوی مسیرها استفاده می‌کند، به این معنی که تطبیق مسیر بسیار سریع است و نیاز به تخصیص حافظه صفر در هر جستجو دارد. این ویژگی Gin را به یکی از سریع‌ترین فریم‌ورک‌های وب Go تبدیل می‌کند.

مسیرها با فراخوانی یک متد HTTP روی موتور (یا یک گروه مسیر) و ارائه یک الگوی URL به همراه یک یا چند تابع handler ثبت می‌شوند:

package main
import (
"net/http"
"github.com/gin-gonic/gin"
)
func main() {
router := gin.Default()
router.GET("/hello", func(c *gin.Context) {
c.String(http.StatusOK, "Hello, World!")
})
router.POST("/users", func(c *gin.Context) {
name := c.PostForm("name")
c.JSON(http.StatusCreated, gin.H{"user": name})
})
router.Run(":8080")
}

در این بخش

صفحات زیر هر موضوع مسیریابی را به تفصیل پوشش می‌دهند: