一、gin框架常用模块
1、将收到的http post请求中body参数转换为对象
func UploadConfig(c *gin.Context) {
p := mconfig.CoursewareParam{}
if err := c.ShouldBindJSON(&p); err != nil {
log.Error("发布课件配置body解析报错,错误信息:", err)
comm.SetResultMsg(c, 1, struct{}{}, "解析参数失败!")
return
}
}
-
p := mconfig.CoursewareParam{} 的含义是:定义了一个mconfig.CoursewareParam是一个结构体类型,用于存储课件发布的相关配置参数
-
c.ShouldBindJSON(&p)的含义是:c.ShouldBindJSON是Gin框架中的一个函数,用于将HTTP请求的JSON格式的请求体解析为Go语言中的结构体对象。第一个参数&p是一个指向CoursewareParam类型变量的指针,用于存储解析后的参数。如果解析失败,函数会返回一个错误对象err,需要进行错误处理。在这段代码中,如果解析失败,会将错误信息打印到日志中,并返回一个自定义的错误信息给客户端。