Open main menu
首页
专栏
课程
分类
归档
Chat
Sci-Hub
谷歌学术
Libgen
GitHub镜像
登录/注册
搜索
关闭
Previous
Previous
Next
Next
在上一节我们介绍到,gin可以使用**ShouldBind**方法把参数绑定到结构体,但是没有介绍到参数校验的方式,这节我们来介绍参数校验和校验失败后转换成中文返回前端。 ## 1.数据校验 下面我们开始一个简单的例子: 1. 在根目录的**requests**目录下新建一个test_request.go ```go package requests //测试请求结构体 该结构体定义了请求的参数和校验规则 type TestRequest struct { Username string `form:"username" binding:"required"` } ``` 2. 在根目录的**api**目录下新建一个test.go的控制器,定义test控制器 ```go package api import ( "cn.sockstack/gin_demo/requests" "github.com/gin-gonic/gin" "net/http" ) func Test(c *gin.Context) { //实例化一个TestRequest结构体,用于接收参数 testStruct := requests.TestRequest{} //接收请求参数 err := c.ShouldBind(&testStruct) //判断参数校验是否通过,如果不通过,把错误返回给前端 if err != nil { c.JSON(http.StatusOK, gin.H{"error": err.Error()}) return } //校验通过,返回请求参数 c.JSON(http.StatusOK, gin.H{"params": testStruct}) } ```
登录查看更多内容
【Gin实战系列】校验错误信息
作者
sockstack
许可协议
CC BY 4.0
发布于
2023-09-02
修改于
2023-09-02
尚未登录
登录 / 注册
专栏目录
【Gin实战系列】快速入门
【Gin实战系列】项目结构
【Gin实战系列】项目配置
【Gin实战系列】控制器于路由
【Gin实战系列】请求参数处理
【Gin实战系列】校验错误信息
【Gin实战系列】服务编写
【Gin实战系列】模型定义
【Gin实战系列】数据库操作
【Gin实战系列】请求响应处理
【Gin实战系列】统一结构响应处理
【Gin实战系列】中间件使用
【Gin实战系列】日志使用
【Gin实战系列】cookie处理
【Gin实战系列】session处理
【Gin实战系列】模板渲染
【Gin实战系列】实例:密码加密
【Gin实战系列】实例:登录注册
【Gin实战系列】jwt身份认证
【Gin实战系列】使用 swagger 文档
【Gin实战系列】实例:文件上传