package main
import (
"github.com/gin-gonic/gin"
"net/http"
)
func main() {
r :=gin.Default()
//创建一个路由组
admin :=r.Group("/admin")
{
admin.GET("/index", func(c *gin.Context) {
c.String(http.StatusOK,"/admin/index")
})
}
r.Run(":8080")
}
GIn框架支持 json,xml,yaml和url参数进行数据映射,绑定的方法有:BindJSON,``BindXML,BindQuery,BindYAML,BindHeader
可选绑定方法(也就是参数可以没有):
ShouldBind,ShouldBindJSON,ShouldBindXML,ShouldBindQuery,ShouldBindYAML,ShouldBindHeader
package main
import (
"github.com/gin-gonic/gin"
"net/http"
)
type Login struct{
User string `form:"user" json:"user" xml:"user" yaml:"user" binding:"required"`
Password string `form:"password" json:"password" xml:"password" yaml:"password" binding:"required"`
}
func main() {
r :=gin.Default()
//form参数据绑定
r.POST("/t1", func(c *gin.Context) {
var login Login
//第一种参数form参数
//err :=c.ShouldBind(&login)
//if err != nil {
//c.JSON(http.StatusBadRequest,gin.H{"error":err.Error()})
//}
//第二种参数:接收url里的参数
//err :=c.BindQuery(&login)
//if err != nil {
//c.JSON(http.StatusBadRequest,gin.H{"error":err.Error()})
//return
//}
//第三种接收json格式
//err :=c.BindJSON(&login)
//if err != nil {
//c.JSON(http.StatusBadRequest,gin.H{"error":err.Error()})
//return
//}
//第四种接收xml格式
err :=c.ShouldBindXML(&login)
if err != nil {
c.JSON(http.StatusBadRequest,gin.H{"err":err.Error()})
return
}
c.JSON(http.StatusOK,gin.H{
"user":login.User,
"password":login.Password,
})
})
r.Run(":8080")
}
由于Gin框架里的关于验证方面的文章太少了,Gin框架也是使用了第三方包https://pkg.go.dev/gopkg.in/go-playground/validator.v9
更多的使用方法还是看这里的文档会比较好些
这个模板的输出如果和php里的比较,确实有些不咋好用,好在现在基本上都是前后端分离了,所以只需要提供接口就可以了!
package main
import (
"github.com/gin-gonic/gin"
"net/http"
)
func main() {
r :=gin.Default()
r.LoadHTMLGlob("templ/*")
r.GET("/index", func(c *gin.Context) {
c.HTML(http.StatusOK,"index.html",gin.H{
"title":"标题123333",
})
})
r.GET("/index2", func(c *gin.Context) {
c.HTML(http.StatusOK,"index2.html",gin.H{
"title":"标题12aaaaad",
})
})
r.Run()
}
{{ define "index.html"}} //这里是标签需要与end标签同时出现
{{.title}}//后台传过来的数据
{{ end }} //结束标签
如果有需要的关于编程技术方面的资料,可以在 wx公众号中搜索 北漂老李 来获取你喜欢的数据哦
页面更新:2024-03-31
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号