Gin框架中 c.ShouldBind 解析参数失败如何解决?

gin框架中 c.shouldbind 解析参数失败如何解决?

gin.shouldbind 遇到参数解析问题

在使用 gin 框架时,若遇到 c.shouldbind 方法解析参数失败的问题,表现为代码中代码 2 注释后,代码 1 能够成功填充前端参数,而代码 1 注释后,代码 2 才能填充前端参数。

问题解决方法

可以使用 c.shouldbindbodywith(¶m, binding.json) 方法来解决此问题。该方法会将请求 body 缓存到上下文中。这样,即使多次调用 c.shouldbind 也能成功解析参数。

示例代码如下:

func List(c *gin.Context) {
    var param models.ListReqInfo

    if err := c.ShouldBindBodyWith(&param, binding.JSON); err != nil {
        return
    }

    // 继续后续业务逻辑...
}

以上就是Gin框架中 c.ShouldBind 解析参数失败如何解决?的详细内容,更多请关注其它相关文章!