自己写一个express中间件

作者:norion时间:2017年5月2日评论次数:0 条

在写这边文章的前面我们来看段代码:

app.use((req, res, next) => {
    /*
    *
    * ... 中间件代码
    *
    */ 
    next()
})

上面,这段是一个典型的express中间代码,那为什么需要中间件?中间件是什么?node社区上有一张很典型的express或者koa的洋葱模型:
洋葱模型
我们可以这样理解,当用户请求也就是request在浏览器端像node发起会经过像洋葱一样的一层处理,这种处理我们会包含很多东西,比如路由匹配、错误、缓存、鉴权等处理,然后在response给浏览器端。这种处理机制,被称为中间件,做成中间件的好处我们可以有一个统一的钩子处理一层一层的数据,就像java中的拦截器。

那么,上面的中间件,有几个关键的东西,其中,use是把中间件函数绑定到app对象中去,当用户发起request的时候,就会往里面传入三个参数:req、res、next,req、res就不用说了,字面意思很明显了,而next就是一个钩子,当执行完中间件代码达到目的之后由next触发下一层洋葱皮。

参考资料:

http://www.expressjs.com.cn/guide/using-middleware.html

上一篇: 用request-promise模块使接口请求变更简单

下一篇:用canvas-prebuilt模块解决canvas模块做windows安装不上的问题

相关文章

评论

评论已关闭。