gin中关于参数注入问题

这篇具有很好参考价值的文章主要介绍了gin中关于参数注入问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

关于参数注入的问题

如果在开发中一旦发小参数没有按照既定的要求注入到结构体的话,这个时候就一定要看请求方式什么?如果是post请求、

前端—post—json{id:1,pageSize:10,page:1}———————————-

参数注入方法:ShouldBindJSON

  • post + json

  • 传递过来json参数,post请求的

    • {page:1,pageSize:10,keyword:“”}
  • gin/beego —context—-c.Request.Body

    • [1,2,3,2,33,4,5,55,55,33]
  • json库方法 json.NewDecoder®—-Decoder对象

    • 注入到pageInfo

    • type PageInfo struct {
         Page     int    `json:"page" form:"page"`         // 页码
         PageSize int    `json:"pageSize" form:"pageSize"` // 每页大小
         Keyword  string `json:"keyword" form:"keyword"`   //关键字
      }
      
  • Decoder.Decode(pageInfo)

    • 底层就是通过反射找到所有结构体的属性,通过属性找到json标签,查看名字是否和jsonkey一致,如果一致就直接把value赋值给属性
  • 结束。

参数注入方法:ShouldBindQuery文章来源地址https://www.toymoban.com/news/detail-662419.html

  • ​ post + query ?id=1&name=1
  • ​ get + query ?id=1&name=1

到了这里,关于gin中关于参数注入问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Go新项目-Gin中wire的依赖注入方式实战(6)

    选型Go项目过程中,针对依赖注入方式的分析和使用 https://go.dev/blog/wire https://medium.com/@dche423/master-wire-cn-d57de86caa1b https://toutiao.io/posts/et0t2lk/preview https://imlht.com/archives/223/ https://lailin.xyz/post/go-training-week4-wire.html https://luenci.me/2022/01/08/%E8%81%8A%E8%81%8AWire%E4%BE%9D%E8%B5%96%E6%B3%A8%E5%85%

    2024年01月18日
    浏览(50)
  • python爬虫爬取中关村在线电脑以及参数数据

    python爬虫爬取中关村在线电脑以及参数数据 2.1vsCode 2.2Anaconda version: conda 22.9.0 3.1 代码 解析都在代码里面 3.2 结果展示 这是保存到数据,用json保存的

    2024年02月12日
    浏览(33)
  • gin参数验证

    用gin框架的数据验证,可以不用解析数据,减少if else,会简洁许多。 都在代码里自己看吧 示例2: 当业务系统对验证信息有特殊需求时,例如:返回信息需要自定义,手机端返回的信息需要是中文而pc端发挥返回的信息需要时英文,如何做到请求一个接口满足上述三种情况。

    2024年01月21日
    浏览(33)
  • Gin各种参数接收

    声明: 这里的 c 都是 c *gin.Context 中的 c Gin中发送JSON数据 在传输或接受JSON数据时,通常习惯通过创建结构体的方式存储数据 注意点: 结构体中成员名需要 大写字母开头 ,否则无法访问 需要再成员名后 添加tag标签 ,方便传输以及接收数据 方法 code 是状态码,例如: http.StatusOK 这是

    2024年02月13日
    浏览(36)
  • Gin 路由注册与请求参数获取

    目录 一、Web应用开发的两种模式 1.前后端不分离模式 2.前后端分离模式 二、RESTful介绍 三、API接口 3.1 RESTful API设计指南 3.2 API与用户的通信协议 3.3 RestFul API接口设计规范 3.3.1 api接口 3.3.2 接口文档: 3.4 restful规范(10条,规定了这么做,公司可以不采用) 四、图书管理系统设

    2024年02月03日
    浏览(45)
  • gin中使用validator做参数校验

    在web开发中对请求参数进行校验,通常在代码中定义与请求参数相对应的模型(结构体),借助模型绑定快捷地解析请求中的参数,例如 gin 框架中的 Bind 和 ShouldBind 系列方法。 gin框架使用github.com/go-playground/validator进行参数校验,目前已经支持 github.com/go-playground/validator/v1

    2024年01月23日
    浏览(41)
  • Golang Gin HTTP 请求和参数解析

    我们介绍了Gin框架,并做了Gin框架的安装,完成了第一个Gin工程的创建。 创建Engine 在gin框架中,Engine被定义成为一个结构体,Engine代表gin框架的一个结构体定义, 其中包含了路由组、中间件、页面渲染接口、框架配置设置等相关内容。 默认的Engine可以通过gin.Default进行创建

    2024年02月01日
    浏览(79)
  • go gin 参数绑定常用验证器

    https://pkg.go.dev/github.com/go-playground/validator/v10#readme-baked-in-validations min 最小 max 最大 len 长度限制 gt 大于 eq 等于 ne 不等于 eqfield 与某个字段值一样 nefield 与某个字段值不一样 oneof 枚举 ,以空格分开 startswith endswith dive 数组

    2024年02月11日
    浏览(39)
  • Go的gin参数校验之validator库

    使用 validator 以后,只需要在定义结构体时使用 binding 或 validate tag标识相关校验规则,就可以进行参数校验了,而不用自己单独去写常见的校验规则。 常用约束如下: 字符串约束 excludesall:不包含参数中任意的 UNICODE 字符,例如excludesall=ab; excludesrune:不包含参数表示的

    2024年02月12日
    浏览(40)
  • Golang中Gin 参数绑定和验证的中间件

    1. 学习在Golang中使用Gin参数绑定和验证的中间件,了解不同参数类型的绑定和验证方式。 Gin框架提供了很多常用的中间件,其中就包括参数绑定和验证的中间件。在使用Gin框架中进行数据绑定和验证时,可以使用Gin内置的Binding、Validating和Uri中间件。 1. Binding Binding中间件用于

    2024年02月08日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包