main.go:
package main
import (
"github.com/gin-gonic/gin"
)
func main() {
r := gin.Default()
r.GET("/hello/:name", func(c *gin.Context) {
name := c.Param("name")
c.JSON(200, gin.H{"message": "Hello " + name})
})
r.Run() // listen and serve on 0.0.0.0:8080
}
controller.go:
package controller
import (
"github.com/gin-gonic/gin"
)
func Home(c *gin.Context) {
c.JSON(200, gin.H{"message": "Welcome to my site!"})
}
func Contact(c *gin.Context) {
c.JSON(200, gin.H{"message": "Please contact us at contact@mysite.com."})
}
func About(c *gin.Context) {
c.JSON(200, gin.H{"message": "My site is all about Golang!"})
}
view.go:
package view
import (
"github.com/gin-gonic/gin"
)
func RenderHome(c *gin.Context, data interface{}) {
c.HTML(200, "home.tmpl", data)
}
func RenderContact(c *gin.Context, data interface{}) {
c.HTML(200, "contact.tmpl", data)
}
func RenderAbout(c *gin.Context, data interface{}) {
c.HTML(200, "about.tmpl", data)
}
路由:
package router
import (
"controller"
"view"
"github.com/gin-gonic/gin"
)
func InitRouter() *gin.Engine