コンテンツにスキップ

ルーティング

Ginは高性能なURLマッチングのためにhttprouter上に構築された強力なルーティングシステムを提供します。内部的にhttprouterは基数木(圧縮トライとも呼ばれる)を使用してルートの格納と検索を行うため、ルートマッチングは非常に高速で、検索ごとのメモリアロケーションはゼロです。これによりGinは利用可能な最速のGoウェブフレームワークの一つとなっています。

ルートはエンジン(またはルートグループ)上でHTTPメソッドを呼び出し、URLパターンと1つ以上のハンドラ関数を指定することで登録します:

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

このセクションの内容

以下のページでは各ルーティングトピックを詳しく説明します: