nodejs仅表示路径的安装中间件

时间:2014-05-09 00:19:04

标签: node.js express middleware

所以我有这个中间件功能:

    function sessionTest(req,res,next){
        if(req.method === 'GET'){
            var signedCookies = req.signedCookies;
            var numValues = Object.keys(signedCookies).length;
            console.log("sessionTest, signedCookies: "+JSON.stringify(signedCookies));
            if(numValues === 0 || signedCookies.user === undefined){
                //redirect user to the login page
                res.render('login', {msg:"Please login"});
            }else{
                next();
            }
        }else{
            next();
        }
    }

我只想为' /'安装它。路径。 我试过了:     app.use(' /',sessionTest); 但它不起作用和其他路径,如' / files'仍然选择中间件。

1 个答案:

答案 0 :(得分:2)

如果您只需要一条路径就可以执行此操作

app.all('/', sessionTest, someOtherFunction, yetAnotherFunction)

当进行next()调用时(如果有的话)它将级联到下一个