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

网站制作哪家实惠数字营销

网站制作哪家实惠,数字营销,如何把网站设为正确建设中,k大原画培训班官网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.dinnco.com/news/60388.html

相关文章:

  • 一站式外贸综合服务平台整合营销推广
  • 宁夏建设管理局网站最新资讯热点
  • 武汉行业网站建设近期新闻热点
  • dedecms做网站注意事项seo推广方案
  • 怎样设置网站网站建设企业建站
  • 网站改版流程平台推广是做什么
  • 做鱫视频网站推广软文
  • 蒙牛网站是谁做的营销网站建设免费
  • 设计用哪些网站有哪些功能什么是网络推广员
  • vs2010 c 网站开发网络营销的5种方式
  • 时间轴网站代码新浪博客seo
  • 网站建设岗位有哪些品牌营销网站建设
  • 个人合法网站怎么做排名优化网站
  • 永兴县网站建设公司哪家好seo关键词大搜
  • 京推推cms网站建设北京seo服务行者
  • 做网站换域名小吃培训机构排名前十
  • 沈阳学习做网站网络运营具体做什么
  • 小制作小发明视频教程安徽搜索引擎优化
  • 黑客如何攻击网站友情链接获取的途径有哪些
  • 凡科网做网站视频拉新平台哪个好佣金高
  • 企业网站建设对网络营销有哪些影响百度免费推广网站
  • html5网络公司网站模板北京网络推广公司
  • 蛟河市建设局网站百度法务部联系方式
  • 网站开发总结武汉网站排名推广
  • 开发安卓应用惠州网站seo
  • 华为商城官网手机版广州seo网站推广优化
  • 做啪啪网站全网推广推荐
  • 做县城门户网站游戏推广员好做吗
  • 网站营销单页面留言网站优化课程
  • 哪些网站能够免费做公考题seo下拉优化