Skip to content

Latest commit

 

History

History

gin

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

gin 工具箱

中间件

error

捕获到在http处理时的错误

在 handler 和其他地方如果产生了 error 可直接panic,到这里统一处理,简化 if err != nil 之类的代码

import (
  "github.com/go-eyas/toolkit/gin/middleware"
  "github.com/go-eyas/toolkit/log"
)

log.Init(&log.Config{})

// engine 
route.Use(middleware.Error(log.SugaredLogger)) // 如果不需要日志记录,传 nil

// handler
func HelloHandler(c *gin.Context) {
  panic("text") // {msg: "text", code: 0, data: {}}
  panic(gin.H{"code": 0, "msg": "some error"}) // {与传入的数据一致,} code 默认999999,status 默认 400,msg 默认 unknow error
  panic(errors.New("some error")) // {msg: "some error", code: 999999, data: {}}
  panic(Struct{...}) // {msg: "unknow", code: 999999, data: {...struct 数据}}
}

logger

使用 zap 打印日志

log.Init(&log.Config{})

import (
  "github.com/go-eyas/toolkit/gin/middleware"
  "github.com/go-eyas/toolkit/log"
)

log.Init(&log.Config{})

route.Use(middleware.Ginzap(log.SugaredLogger))

godoc

API 文档