Golang >> Gin | logrus | Go基础
Go基础

Go logrus日志使用实例

3个月前 (2020-04-30) 330 浏览 评论

Go自带的logger无法满足我们的需求,自然要考虑其他日志框架了,logrus作为很多开发首选的日志框架,这里以logger中间件为例,简单写下logrus的使用和理解。概要:1、Gin框架:这里我们使用gin框架来实现,其他框架大同小异2、自定义logger中间件:添加middleware包,并use middleware.logger3、logrus日志框架:具体操作应该都了解,就没什么好说的了4、日志输出到文件:gin中日志是默认输出到控制台的,根据我们的需求,我们将日志输出到

Go基础

Go 结构体转map[string]interface{}

3个月前 (2020-04-29) 283 浏览 评论

Go数据类型用起来有点累。不定义结构体的话,对map进行json转换的时候,数据不是自己定义的顺序。定义结构体的话,我们往往对数据操作的时候想操作index,但是结构体无法操作index。这时候就要将结构体转成map[string]interface{}格式,下面我们使用反射遍历结构体来生成map:type User struct {    Id   uint32 `bson:"id&q

Gin

Gin框架 BindJSON返回EOF

3个月前 (2020-04-16) 719 浏览 评论

在开发中使用中间件获取json请求参数,使用 ioutil.ReadAll 来读取body中的内容,代码如下:b, err := ioutil.ReadAll(c.Request.Body)以上没有问题,中间件或获取到了我需要的请求参数,但是问题来了:在接口中绑定参数的时候返回EOF。var user models.User err := c.ShouldBindJSON(&user)然后发现,bo