Filter - nokitjs/nokit GitHub Wiki
Filter 可以在请求的不同阶段截获请求,进行相关逻辑处理后,继续向下处理请求或结束请求,一个完整的 filter 最少包括 4 个事件,如下
/**
* AccessFilter
**/
var AccessFilter = function () { };
/**
* 在请求发生异常时
**/
AccessFilter.prototype.onError = function (context, next) {
next();
};
/**
* 在请求到达时
**/
AccessFilter.prototype.onRequest = function (context, next) {
next();
};
/**
* 在收到请求数据时
**/
AccessFilter.prototype.onReceived = function (context, next) {
next();
};
/**
* 在发送响应时
**/
AccessFilter.prototype.onResponse = function (context, next) {
next();
};
//exports
module.exports = AccessFilter;
在应用中注册 Filter,一般在 应用配置 中:
{
"filters":{
"^/":"./filters/demo-filter.js"
}
}
也可指定 filter 的 vbers
{
"filters":{
"get ^/":"./filters/demo-filter.js"
}
}