中间件 middleware
在 golang
中是一个很重要的概念,与 java
中拦截器很相似。通过 gin 源代码来看看中间件代码使用。
?中间件使用
我们还是回到了 initRouter
中 SetupRouter
这个方法。
router := gin.Default()
我们的项目是从这一行代码开始的,所以我们看看这一行代码做了些什么。打开 Default
源码,
func Default() *Engine {
debugPrintWARNINGDefault()
engine := New()
engine.Use(Logger(), Recovery())
return engine
}
源码中,首先是 New
了一个 engine
,紧接着通过 Use
方法,传入了 Logger()
和 Recovery()
,而 Logger
和 Recovery