如何解决Gin框架编写PUT接口使用BindJSON绑定参数报错的问题

如何解决Gin框架编写PUT接口使用BindJSON绑定参数报错的问题

这篇文章主要介绍“如何解决Gin框架编写PUT接口使用BindJSON绑定参数报错的问题”,在日常操作中,相信很多人在如何解决Gin框架编写PUT接口使用BindJSON绑定参数报错的问题问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何解决Gin框架编写PUT接口使用BindJSON绑定参数报错的问题”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

Gin框架编写PUT接口使用BindJSON绑定参数报错,当结构体绑定参数有误时, 状态码为400,强制返回200,结果code还是400.

原因 : BindXXX方法都return c.MustBindWith(obj, binding.XXX)。如果绑定错误,则c.AbortWithError(http.StatusBadRequest, err).SetType(ErrorTypeBind)。这将响应状态码设置为400,并将Content-Type标题设置为text/plain; charset=utf-8。如果强制修改成200,就会警告[WARNING] Headers were already written. Wanted to override status code 400 with 200。

解决方法 : 绑定结构体的方法把BindJSON改为ShouldBind。

到此,关于“如何解决Gin框架编写PUT接口使用BindJSON绑定参数报错的问题”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!