Конечно, вы можете просто сделать это, если предпочитаете:
func MyMiddleware(c *gin.Context) {
// middleware
}
r := gin.New()
r.Use(MyMiddleware)
Наиболее вероятная причина, по которой вам предлагается сделать это вместо этого:
func MyMiddleware() gin.HandlerFunc {
return func (c *gin.Context) {
// middleware
}
}
r := gin.New()
r.Use(MyMiddleware())
, так что выможно добавить параметры, пример, используемый здесь: https://github.com/gin-gonic/gin#custom-middleware - это промежуточное программное обеспечение для ведения журнала .:
func Logger() gin.HandlerFunc {
return func(c *gin.Context) {
// code goes here
}
}
У него не было никаких параметров, но вы можете использовать собственный регистратор, такой как logrus в вашем промежуточном программном обеспечении, добавив параметр:
У вас может быть промежуточное программное обеспечение для регистрации, например:
func Logger(log *logrus.Logger) gin.HandlerFunc {
return func(c *gin.Context) {
// use logrus
log.WithFields(log.Fields{
"animal": "walrus",
}).Info("A walrus appears")
}
}
И используйте его следующим образом:
var log = logrus.New()
r.Use(Logger(log))