gin 获取post请求的json body操作详解
本文主要介绍了gin 获取post请求的json body操作 |
代码如下
type KDRespBody struct {Errcode int `json:"errcode"`Desc string `json:"description"`Data []services.KdSearchBack `json:"data"` } var reqInfo KDRespBody err := c.BindJSON(&reqInfo) if err != nil {log.Info(err)c.JSON(200, gin.H{"errcode": 400, "description": "Post Data Err"})return } else {fmt.Println(reqInfo.Data) }
补充:使用gin接受post的json数据
第一种
func Login(c *gin.Context) {json := make(map[string]interface{}) //注意该结构接受的内容c.BindJSON(&json)log.Printf("%v",&json)c.JSON(http.StatusOK, gin.H{"name": json["name"],"password": json["password"],}) }
第二种
type User struct {Name string `json:"name"`Password int64 `json:"password"` } func Login(c *gin.Context) {json := User{}c.BindJSON(&json)log.Printf("%v",&json)c.JSON(http.StatusOK, gin.H{"name": json.Name,"password": json.Password,}) }
补充:golang json数据解析错误情况
byte数组接收网络数据完网络数据后,需要根据接收到的长度进行重新分片,才能被json进行解析,不然会报错。
for {len1, err := resp.Body.Read(data)if len1 > 0 {data1 := data[:len1] //需要根据接收到的长度进行重新分片err1 := json.Unmarshal(data1, rec_rep)if err1 != nil {fmt.Println("json.Unmarshal failed")}}if err != nil {break} }
gin 获取post请求的json body操作详解相关推荐
- MySQL操作之JSON数据类型操作详解
MySQL操作之JSON数据类型操作详解 这篇文章主要介绍了MySQL操作之JSON数据类型操作详解,内容较为详细,具有收藏价值,需要的朋友可以参考. 概述 mysql自5.7.8版本开始,就支持了j ...
- Go gin获取post请求数据
Go gin获取post请求数据 注意:是post请求 一.获取表单提交的数据 1.contxt.PostForm("username") 获取表单中的name属性对应的值 示例代 ...
- Go gin获取GET请求参数
Go gin获取GET请求参数 一.带参数的路由:路径中直接加上参数值 e.g. http://127.0.0.1:8080/user/hallen 1.第一种情况:使用占位符: ,必须得指定这个路径 ...
- C#获取http请求的JSON数据并解析
文章目录 1️⃣ C#获取http请求的JSON数据并解析 1.1 获取http的JSON数据 1.2 解析JSON数据 优质资源分享 C#获取http请求的JSON数据并解析,第一步,先拿到http ...
- 使用Gin框架集成JWT,源码、详解、面试问题
使用Gin框架集成JWT,源码.详解.面试问题 一.什么是JWT Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519). ...
- ElasticSearch——Spring Boot 集成 ES 操作详解
文章目录 ElasticSearch--Spring Boot 集成 ES 操作详解 1.SpringBoot 集成 ES 2.索引的API操作详解 3.文档的API操作详解 ElasticSearc ...
- java web json_java web中对json的使用详解
一.在Java Web的开发过程中,如果希望调用Java对象转化成JSON对象等操作.则需要引入以下jar包,不然运行时则报错. 1.commons-beanutils.jar 2.commons-c ...
- 核心要素及常用操作详解
核心要素及常用操作详解 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5z6s4kZN-1678660733651)(http://49.7.203.222:3000/ ...
- 第 5 章 Nova - 041 - Resize Instance 操作详解
Resize Instance 操作详解 Resize 的作用是调整 instance 的 vCPU.内存和磁盘资源. Instance 需要多少资源是定义在 flavor 中的,resize 操作是 ...
最新文章
- 查询GC得到森林里主域和子域的帐号
- qs.stringify和JSON.stringify的使用和区别
- 二次规划的一个很好的课件网站
- android 用webView作为编辑器 各种问题
- MYSQL执行计划EXPLAIN
- OpenShift 4 - 镜像漏洞扫描软件 Clair
- linux生成ssl证书给haproxy,如何为多个SSL证书配置HAProxy
- B2C商家怎样在有限的预算下展开营销
- [1140]linux查看历史命令history
- 用java输入学生姓名查询成绩_java实现学生成绩录入系统
- python递归编程题_Python数据结构与算法41:递归编程练习题4:铺瓷砖
- NFV与SDN的区别与联系
- 踱步狼注释移除,状态机算法更新2019.10.16
- 本程序实现求n*m的二维数组元素的最大值,请将程序补充完整,以实现规定功能
- 计算机无法使用本地搜索,电脑资源管理器搜索功能无法使用解决措施
- effective stl 第31条:了解与各种排序相关的选择
- 数据骗子无处不在,教你拆穿所谓“万金油”
- Ti IMGLIB库简介
- 腾讯的断舍离:弃“企鹅”,保“虎斗”
- Docker Mirror