gin基础学习笔记--参数验证

用gin框架的数据验证,可以不用解析数据,减少if else,会简洁许多。

Go 复制代码
package main

import (
	"fmt"
	"time"

	"github.com/gin-gonic/gin"
	"github.com/gorilla/sessions"
)

// 初始化一个cookie存储对象
// something-very-secret应该是一个你自己的密匙,只要不被别人知道就行
var store = sessions.NewCookieStore([]byte("secret"))

type Person struct {
	Age      int       `form:"age" binding:"required,gt=10"`
	Name     string    `form:"name" binding:"required"`
	Birthday time.Time `form:"birthday" time_format:"2006-01-02" time_utc:"1"`
}

func main() {
	r := gin.Default()
	r.GET("/51mh", func(ctx *gin.Context) {
		var person Person
		if err := ctx.ShouldBind(&person); err != nil {
			ctx.String(500, fmt.Sprint(err))
			return
		}
		ctx.String(200, fmt.Sprintf("%#v", person))
	})
	r.Run()
}

结果是:感觉没有经过验证

相关推荐
半新半旧1 小时前
mongodb 学习笔记
笔记·学习·mongodb
贺函不是涵3 小时前
【沉浸式求职学习day36】【初识Maven】
java·学习·maven
芯片SIPI设计3 小时前
MIPI C-PHY 标准学习----一种通用多信号传输方案
c语言·开发语言·学习
Huazzi.3 小时前
Ubuntu 22虚拟机【网络故障】快速解决指南
linux·网络·学习·ubuntu·bash·编程
【0931】4 小时前
英语六级---2024.12 卷二 仔细阅读2
学习·英语
虾球xz5 小时前
游戏引擎学习第271天:生成可行走的点
c++·学习·游戏引擎
海尔辛5 小时前
学习黑客5 分钟读懂Linux Filesystem Interaction Continued
linux·服务器·学习
wangbaowo5 小时前
MySQL数据库下篇
数据库·经验分享·笔记·学习·mysql·安全
chennalC#c.h.JA Ptho5 小时前
生成了一个AI算法
经验分享·笔记·aigc
麻雀无能为力6 小时前
C++自学笔记 makefile
笔记