code: func (engine *Engine) Use(middleware ...HandlerFunc) IRoutes {
  	engine.RouterGroup.Use(middleware...)
  	engine.rebuild404Handlers()
  	engine.rebuild405Handlers()
  	return engine
  }
docs: // Use attaches a global middleware to the router. ie. the middleware attached though Use() will be
  // included in the handlers chain for every single request. Even 404, 405, static files...
  // For example, this is the right place for a logger or error management middleware.