How to Route Multi URL with Same Prefix Using Gin

Gin (Gin-Gonic) is a powerful HTTP web framework. It is famous among Golang Developers. Let’s say you want to route some microservice hosted in your site using prefix url, i.e: yoursite.com/myservice this simple code that use Gin will make your life easier. Using RouterGroup feature you can navigate URL with prefix more faster.

package mainimport "github.com/gin-gonic/gin"func main() {    r := gin.Default()    v1 := r.Group("/myservice")    {        api := v1.Group("/api/v1")        {            api.GET("/", func(c *gin.Context) {                c.JSON(200, gin.H{                    "message": "Success!",                })            })        }    }    r.Run() // listen and serve on 0.0.0.0:8080}

When you try to access yoursite.com/myservice/api/v1 you will get this logs.

[GIN-debug] GET    /myservice/api/v1/             --> main.main.func1 (3 handlers)

Easy right!

PS: Another syntax to serve url with prefix.

router.GET("/myservice/api/*any", gin.WrapH(http.DefaultServeMux))

Leave a Reply

Your email address will not be published. Required fields are marked *