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

    go 复制代码
    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

  • post + query ?id=1&name=1
  • get + query ?id=1&name=1
相关推荐
onlywhz2 天前
【Golang】——Gin 框架中间件详解:从基础到实战
中间件·golang·gin
不会写DN2 天前
Gin 接收前端传参方式有几种?
开发语言·前端·gin
贺小涛6 天前
Golang Gin框架核心原理与架构解析
架构·golang·gin
yashuk13 天前
Go-Gin Web 框架完整教程
前端·golang·gin
ErizJ14 天前
面试 | gin gorm go-zero
面试·golang·gin·gorm·gozero
透过清晨16 天前
Gin 框架中的规范响应格式设计与实现 (一)
gin
透过清晨16 天前
Gin 框架中的规范响应格式设计与实现 (五)
gin
透过清晨16 天前
Gin 框架中的规范响应格式设计与实现(二)
gin
捧 花16 天前
Go + Gin 实现 HTTPS 与 WebSocket 实时通信
websocket·golang·https·go·gin
stark张宇1 个月前
微服务架构必备:Gin + gRPC + Consul + Nacos + GORM 打造用户服务
微服务·gin·grpc