前言
上一篇【node.js 关于express框架使用及其“中间件“概念的理解】讲到了express及其中间件概念,介绍了中间件的堆栈式调用规则。今天来学习如何巧妙利用堆栈式的调用规则,实现常见的后端逻辑。
调用时序
每个中间件都分为两个调用时序,分别是小夫我要进来了 进入中间件时,退出中间件时。
var middleware = function(req, res, next) {
/*
进入中间件时 运行该部分代码
*/
next(); // 下一层
/*
退出中间件时 运行该部分代码
*/
};
对于请求对象的过滤,一般可以放在【进入中间件时】完成,而需要获取下一层中间件上下文才能进行的操作,最好放在【退出中间件时】进行,听起来可能有点抽象,所以我们下面举几个例子来说明。
对请求的过滤
在实际编程的时候我们往往会遇到如下的情况:要对请求的参数做各种过滤,打回不合格的请求。这个就是典型的顺序过滤的情况,下图很好的描述了这种过滤机制。