NodeJS和Express拦截器

3
我正在尝试编写一个用于计量目的的拦截器。我的拦截器必须在任何http查询之前被调用(并在Express执行其工作之前)以放置一些时间信息,并在Express执行完毕后获取调用的持续时间。
我正在尝试使用中间件,对于“before”调用它可以正常工作,但是对于“after”调用则不行,因为当找到路由时,传播通过其他中间件就会停止。
请提供一些线索,以使所有情况下都能够使用一些拦截器。
编辑:
实际上,我正在尝试获得一种类似于Javascript的AOP...
"before" 拦截器中间件如下:
// JMC Add metrologie informations for all route called
    app.use(function (req, res, next) {
        var name = req.originalMethod + req.originalUrl;
        log.trace('Start MetroInfo for route : %s', name);
        metro.startMetrologie(name);
        return next();
    });

感谢您的提前致谢。

2个回答

5
如果您需要拦截响应,请考虑使用中间件express-interceptor,它非常易于使用,并使您能够像往常一样响应请求。

2
我在这里找到了一个答案,使用了meld npm模块:https://www.npmjs.org/package/meld 这正是我所需要的。中间件对于拥有拦截器功能来说并不实用。
JM.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接