(三)express的中间件
先说中间件,因为express本身就是一个相应的http服务器,第三方模块,是一个基于Node.js的http模块而编写的高层模块,简化Web服务器端应用的开发。
里面涉及到很多封装对象,app.use 就是使用的相应中间件的一种用法,所以就先对这个中间件进行一个整理。
Express中间件的原理及实现 https://www.jianshu.com/p/797a4e38fe77
中间件 middleware
一个请求发送到服务器后,它的生命周期是 先收到request(请求),然后服务端处理,处理完了以后发送response(响应)回去
而这个服务端处理的过程就有文章可做了,想象一下当业务逻辑复杂的时候,为了明确和便于维护,需要把处理的事情分一下,分配成几个部分来做,而每个部分就是一个中间件
app.use( )定义路由
在实际的项目中,我们通常用 app.use( ) 代替 app.get( ) 和 app.post( ),这是因为,路由规则是 app.use(path,router)定义的,router代表一个由express.Router()创建的对象,在路由对象中可定义多个路由规则,而当我们的路由只有一条规则时,可直接用一个回调作为简写,也可直接使用app.get( ) 或app.post( )方法,所以当一个路径有多个匹配规则时,使用app.use( ) 否则使用相应的app.get( ) 或app.post( )方法。
大致理解就行,后期会写一个中间件的是怎么实现的。