当前位置: 首页 > news >正文

房产网站设计模板企业查询

房产网站设计模板,企业查询,政府部门网站建设对比方案,香港服务器试用controller 模型绑定与参数校验 gin框架提供了多种方法可以将请求体的内容绑定到对应struct上,并且提供了一些预置的参数校验 绑定方法 根据数据源和类型的不同,gin提供了不同的绑定方法 Bind, shouldBind: 从form表单中去绑定对象BindJSON, shouldB…

controller 模型绑定与参数校验

gin框架提供了多种方法可以将请求体的内容绑定到对应struct上,并且提供了一些预置的参数校验

绑定方法

根据数据源和类型的不同,gin提供了不同的绑定方法

  • Bind, shouldBind: 从form表单中去绑定对象
  • BindJSON, shouldBindJSON: 这两个方法是从json表单中去绑定对象
  • 还有从xml,protobuf等等
参数校验

gin提供了一系列预置的参数校验,可以参考官方文档。 用binding 标签

  • required 必须参数

  • number 要求数字

  • omitempty 允许为空

  • email 邮件格式

等等

实例
package courseimport ("github.com/gin-gonic/gin""net/http"
)func InitRouters(r *gin.Engine) {//使用路由分组api := r.Group("api")initCourse(api)
}func initCourse(group *gin.RouterGroup) {// 路由分组v1 := group.Group("/v1"){// /api/v1/course// 路径携带参数v1.GET("/course/search/:id", course.Get)v1.POST("/course/add/:id", course.Add)v1.PUT("/course/edit/:id", course.Edit)v1.DELETE("/course/del", course.Delete)}
}// 模型绑定, gin 引用了 validator,有一些预置标签
type course struct {Name string 		`json:"name"     form:"name" binding:"required"`Teacher string		`json:"teacher"  form:"teacher" binding:"required"`Duration int		`json:"duration" form:"duration" binding:"number"`
}func Add(c *gin.Context) {req := &course{}// 从form表单去绑定 c.Bind() c.ShouldBind()// 从json里去取值 c.BindJSON()// 带should的bind 可以去返回错误,不带的会直接响应请求err := c.ShouldBindJSON(req)if err != nil {c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error(),})return}c.JSON(http.StatusOK, req)
}func Get(c *gin.Context) {// 获取路径上的参数id := c.Param("id")// 都是gin.context作为入参c.JSON(http.StatusOK, gin.H{"method": c.Request.Method,"path": c.Request.URL.Path,"id": id,})
}func Edit(c *gin.Context) {req := &course{}err := c.ShouldBindJSON(req)if err != nil {c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error(),})return}c.JSON(http.StatusOK, gin.H{"method": c.Request.Method,"path": c.Request.URL.Path,"req": req,})
}func Delete(c *gin.Context) {// 从queryString 获取id := c.Query("id")// 都是gin.context作为入参c.JSON(http.StatusOK, gin.H{"method": c.Request.Method,"path": c.Request.URL.Path,"id": id,})
}
测试

在这里插入图片描述

http://www.tj-hxxt.cn/news/41281.html

相关文章:

  • 寻找网站设计与制作最新新闻播报
  • 如何利用网站做淘宝客网络推广图片大全
  • 做搜狗网站快速排名软学it一年的学费大概是多少
  • dede 网站日志整站关键词排名优化
  • 遵义网站建设有限公司宁波seo哪家好快速推广
  • 俄罗斯网站域名下载百度软件
  • 网站公司建设营销最好的方法
  • 网站建设策划书色彩设计方案seo兼职怎么收费
  • 自己的网站怎么做网盘域名注册商
  • 成都学校网站建搜索引擎大全网址
  • 怎么建设vip电影网站怎么样在百度上推广自己的产品
  • 什么网站有做面条的app俄罗斯网络攻击数量增长了80%
  • 长沙网站优化方案seo营销是什么意思
  • 如何制作手机免费网站模板百度开放平台
  • 企业网站建设公司网络服务seo优化专员编辑
  • php网站开发环境一百度导航下载2021最新版
  • 淄博个人承接网站制作软文写作的基本要求
  • dedecms 做的医院网站效果好的东莞品牌网站建设
  • 移动网站开发服务seo外包优化服务商
  • 做网站根据内容生成pdf免费做网站怎么做网站吗
  • 仿牌做独立网站可靠吗谷歌play商店
  • 网站设置可以访问企业查询系统
  • 宝鸡精品网站开发郑州网络营销
  • 广州建设工程信息网站足球积分排行榜最新
  • 劳务公司怎么申请办理网站优化推广方案
  • 网站建设要求bt搜索引擎下载
  • 接单子做网站在线制作网站免费
  • 深圳企业网站seo专业seo公司
  • 陕西省建设网三类人员成绩公示百度seo服务公司
  • 效果建网站的公宁波seo怎么推广