Files
gf/.example/net/ghttp/server/request/request_validation.go

30 lines
750 B
Go

package main
import (
"github.com/gogf/gf/frame/g"
"github.com/gogf/gf/net/ghttp"
"github.com/gogf/gf/util/gvalid"
)
func main() {
type User struct {
Uid int `gvalid:"uid@min:1"`
Name string `params:"username" gvalid:"username @required|length:6,30"`
Pass1 string `params:"password1" gvalid:"password1@required|password3"`
Pass2 string `params:"password2" gvalid:"password2@required|password3|same:password1#||两次密码不一致,请重新输入"`
}
s := g.Server()
s.BindHandler("/user", func(r *ghttp.Request) {
user := new(User)
r.GetToStruct(user)
if err := gvalid.CheckStruct(user, nil); err != nil {
r.Response.WriteJson(err.Maps())
} else {
r.Response.Write("ok")
}
})
s.SetPort(8199)
s.Run()
}