中间件

@Middleware
本质是一个函数function
通过use挂载
每个中间件都可以处理请求或响应
数量不限制,但是按照use挂载的顺序执行,流水线执行,所以上一个中间件定义的数据可以被下一个中间件获取
不是按照定义的顺序
使用next才可以执行下一个中间件
针对所有路由
server.user(fn)
针对特定路由
server.user('/xxx',fn)
function mw(req,res,next){
  console.log('i am a middleware')
  req.str='abc'
  next();
}
function foo(req,res,next){
  console.log(req.str)
  next();
}

server.use(mw)

server.use('/login', foo)

server.use(()=>{
  console.log('hi,there.')
})