nodejs中有没有类似JAVA的拦截器功能,我想实现数据增删改查都先经过这个过滤器。
想对用户对数据的操作记录,都记录到数据库里,不知道怎么实现?
compose (filter(data))
写个filter函数还需要用到库吗
express 的中间件机制就是…这个
bearcat aop 轻松搞定
我需要获取操作前的数据,和操作后的数据,该怎么做呢?
如果你使用express,中间件就是“拦截器”
同求 我也很想知道 类似ASP.NET MVC的过滤器
@cyy0418 function filter (data) { // 操作data代码 return 过滤后的data; }
或者filter(data, compose)
异步运行
function filter (data, f) {
// 操作data
f.call(null, 过滤后的data);
}
中间件就是拦截器
@tulayang 我想达到的效果是
比如用户操作来数据data,为我想对它这个操作加个过滤器,这个过滤器可以获取用户操作前的数据,和修改后的数据。 类似与监听事件了
@cyy0418 这个很简单,只需要2个变量记录操作前的数据和操作后的数据,不需要依赖封装。
操作数据的函数可以定义为: compose(dataA), 返回dataA, dataB.
function compose (dataA) {
// 过滤dataA
// 得到dataB
return { dataA: dataA, dataB: dataB };
}
或者也可以定义多态过滤的版本
function compose (dataA, f) { // f为多态过滤函数
// f(dataA), 过滤dataA;
// 得到dataB
return { dataA: dataA, dataB: dataB };
}
ex 的中间件,切入点是HTTP 请求接收里,如果我在业务处理中如何使用? 中间件看功能实现是多个拦截一个,有处理排序问题 一般拦截是一对一的 有兴趣看看我写的AOP